0
我有多個表,我正在使用以下查詢按expiry_date篩選未過期的記錄。'where子句'中的未知列'expiry_date'我的sql查詢
我的查詢:
SELECT
MT.id,
CONCAT(MEM.name,' ',MEM.last_name) AS name,
IFNULL((SELECT MAX(MFT.membership_end_date)
FROM membership_future_transaction AS MFT
WHERE MFT.membership_transaction_id = MT.id),MM.end_date) AS expiry_date,
MEM.phone,
MEM.email,
MMST.name AS membership_name,
MMST.price,
MMST.session
FROM
membership_transaction AS MT
LEFT JOIN member_master AS MEM ON MEM.id = MT.member_id
LEFT JOIN members_membership AS MM ON MM.membership_transaction_id = MT.id
LEFT JOIN membership_master AS MMST ON MMST.id = MT.membership_id
WHERE
MT.is_casual = 'No'
AND MT.is_deleted = 'No'
AND MM.is_cancelled = 'No'
AND expiry_date >= '2016-01-01'"
但我得到了「where子句」錯誤,請幫我我在這裏失蹤未知列「EXPIRY_DATE」。
[using-column-alias-in-where-clause-of-mysql-query-produce-an-error]的副本(http://stackoverflow.com/questions/942571/using-column-alias-in -where-clause-of-mysql-query-produce-an-error) – amdixon
你在哪個表中有'expiry_date'列? – Gunaseelan
如果您使用別名,請使用別名 – Drew