虛擬colmn我用這個查詢與虛擬列New_Users
不能使用過濾器,其中在選擇MYSQL
SELECT `r`.`deal_id` as Deal_ID,
concat("2013\-05\-15") as start_date,
concat("2013\-05\-16") as end_date,
abs(0) AS New_Members
FROM (`ws_deal` r)
WHERE New_Members != 0
ORDER BY `deal_id`"
我有一個錯誤「在1未知列‘New_Members’‘where子句’SQL.sql 1 118」
如果我沒有使用New_Members != 0
,如果查詢是
SELECT `r`.`deal_id` as Deal_ID,
concat("2013\-05\-15") as start_date,
concat("2013\-05\-16") as end_date,
abs(0) AS New_Members
FROM (`ws_deal` r)
ORDER BY `deal_id`
LIMIT 12"
我得到一個結果。
Deal_ID start_date end_date New_Members
407 2013-05-15 2013-05-16 0
408 2013-05-15 2013-05-16 0
409 2013-05-15 2013-05-16 0
410 2013-05-15 2013-05-16 0
411 2013-05-15 2013-05-16 0
412 2013-05-15 2013-05-16 0
413 2013-05-15 2013-05-16 0
414 2013-05-15 2013-05-16 0
415 2013-05-15 2013-05-16 0
416 2013-05-15 2013-05-16 0
417 2013-05-15 2013-05-16 0
我的問題是爲什麼我不能過濾這個結果。我如何過濾這個。 (您可能想反正New_Member != 0
和過濾不需要,但我需要這是通過一個過濾器發生,而這一動態在一個大的查詢集合時,產生的查詢)
非常感謝
您不能在'where'子句中使用別名。只有在'擁有,分組,排序'條款 –
只是一個查詢:'abs(0)'總是會給你值爲'0'。這意味着'New_Member'列中的所有值都是'0'。然後將過濾器應用爲'New_Member!= 0',將不會返回行。那麼你想要達到什麼? – heretolearn