只是一个快速简单的问题,没有太复杂
我正在MySQL中创建一个函数来返回特定航班的总收入,我的问题是这个;我可以COUNT()在哪里payType = 1的值,然后乘以机票的价格?我确实试过这个,但由于某种原因,它没有成倍增加。
我在想什么的例子:
SELECT COUNT(paymentType * 400) FROM booking
WHERE paymentType = 1;
这是开始和结束$$之间的代码。
DECLARE revenue INT;
SELECT COUNT(paymentType) INTO revenue FROM booking
INNER JOIN flights
ON booking.flightCode = flights.flightCode
WHERE paymentType = 1
AND flights.flightDate = flight_date
AND flights.flightNumber = flight_number;
RETURN revenue;
答案 0 :(得分:1)
count()
只检查指定的字段是否为非空,并将其计为1
,而不管其中的值。 count(somefield*400)
和count(somefield)
基本上都会给出完全相同的计数
如果你想将ITSELF计数加倍400,那么你需要
select count(somefield) * 400 as result