sql - 存储过程将不同表中的值相乘
问题描述
所以我被一个存储过程困住了。
我在数据库中有这两个表:
交易
时间标识 | 身份证 | 车牌号 | 身份证 | t日期 | 挑个日子 | 归期 |
---|---|---|---|---|---|---|
1002 | 1006 | 1004 | 104 | 2018-04-18 | 2018-04-28 | 2018-04-2 |
车
车牌 | 制作 | 模型 | 类型 | 年 | 价格 |
---|---|---|---|---|---|
1004 | 福特 | 重点 | 孵化 | 2019 | 140.00 |
出于税收目的,我需要计算交易成本的 10%。我已经设法获得了租金的长度并将其存储到一个变量中,但无法弄清楚如何将交易中使用的汽车价格乘以价格的长度,然后显示结果。
这是我到目前为止的代码:
CREATE PROCEDURE Tax_Due
@tID INT
AS
DECLARE @carPrice as INT
DECLARE @rentLength as INT
SELECT @rentLength = DATEDIFF(day, PickupDate, ReturnDate)
FROM [Transaction]
WHERE tID = @tID
SELECT @carPrice = Price
FROM Car
WHERE
解决方案
我不明白为什么你不能加入表格并进行这样的计算
SELECT DATEDIFF(day, PickupDate, ReturnDate) * Price.Price * .1 as tax
FROM [Transaction] join [Price] on Transaction.carID = Price.carID
WHERE tID = @tID
推荐阅读
- linux - Perl脚本执行中`test -x`的用途是什么
- wordpress-rest-api - 通过 REST API 在 Wordpress 中创建新帖子 - 如何为 Yoast SEO 插件添加元标题和描述?
- jquery - kendo-ui exportPdf 和 exportExcel 停止
- c++ - 有没有办法将此“for i”c++ 预处理器宏转换为现代 C++(11+)?
- mysql - 如何计算按属性分组的行,该属性在特定日期之前没有出现?
- sql - 数据库设计存储爬网信息的建议是什么
- azure-devops - Azure Dev Ops - 如何要求 3 个批准者中的 2 个进行部署前批准?
- php - PHP - 如果路由返回字符串,则不进入循环
- javascript - 如何在express node.js中发送对ajax post请求的响应?[已回答]
- c# - Unity ARKit SetWorldOrigin - 旋转错误