![](/img/trans.png)
[英]MYSQL select field1, field2 only where field1 or field2 does not equal text
[英]Mysql where query… select * where field1 +field2 + field3 <= field 4
基本上我想將存儲在field1
, field2
和field3
的數字加起來,並且只顯示該總數小於field4
...
例如: select * from table where field1 + field2 + field3 <= field 4
但這不起作用....任何幫助表示贊賞
這是我的實際SQL,您可以看到它更加復雜:
SELECT
*,
SUM ( amountpaid , amountpaid2 , amountpaid3 ) AS total AND
DATE_FORMAT(date_start, ' %d.%m.%Y') AS date_formatted
FROM
calendar_event
WHERE
Date_start BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 14 DAY) AND
total <= amount )
搶
也許您的意思是:
SELECT
*,
amountpaid + amountpaid2 + amountpaid3 AS total,
DATE_FORMAT(date_start, '%d.%m.%Y') AS date_formatted
FROM calendar_event
WHERE Date_start BETWEEN NOW() AND DATE_ADD(NOW(), INTERVAL 14 DAY)
AND amountpaid + amountpaid2 + amountpaid3 <= amount
假設您分別在amountpaid
, amountpaid2
和amountpaid3
,這將為您提供所有在接下來的14天內開始且未超額支付的事件(即未付或完全付清)。
您的查詢
select * from table where field1 + field2 + field3 <= field4
應該工作得很好。 確保您要尋址的所有列實際上都存在並且它們是數字(整數,浮點數,雙精度數等)。 還請確保,如果您實際上這樣稱呼,那么field4在“ field”和“ 4”之間沒有空格-您的問題之間有一個空格,例如“ field 4”而不是“ field4”。
或者,讓我們知道您收到什么錯誤消息。
Select
*,
Coalesce(amountpaid, 0) + Coalesce(amountpaid2, 0) + Coalesce(amountpaid3, 0) As total,
DATE_FORMAT(date_start, ' %d.%m.%Y') As date_formatted
From
calendar_event
Where
Date_start Between Now() And Date_Add(Now(), Interval 14 DAY) And
Coalesce(amountpaid, 0) + Coalesce(amountpaid2, 0) + Coalesce(amountpaid3, 0) <= amount
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.