-3
如果areas.id爲空,那麼只顯示'MISSING AREA'數據而不是包含空白?我嘗試使用outlet.STATUS <> 0,但SQL表示列STATUS不存在。所以在這種情況下,我創建的STATUS列不能被過濾?SQL中創建列中的條件
很抱歉的混亂,樣本數據將是這樣的:
商店
id firm name area id
----------------------
1 abc 21
2 xyz 23
3 def 42
領域
id
--
20
23
40
連接的表與STATUS:
id firm name area_id id Status
---------------------------------------
1 abc 21 NULL MISSING AREA
2 xyz 23 23
3 def 42 NULL MISSING AREA
我想不顯示shops.id = 2,只顯示1和3
select
shops.id, shops.firm_name, shops.area_id,
areas.id,
IF(areas.id, "", "MISSING AREA") as STATUS
from
shops
left join
areas on areas.id = shops.area_id
where
shops.area_id != 0
order by
STATUS asc
請標記DBMS,並提供一些樣品和輸出數據,我認爲這是很容易的要求。 – Susang
你提到'outlet.STATUS <> 0',查詢有'outlets.area_id!= 0',兩個不同的'outlet'拼寫。無論哪種方式,這個'出口'是什麼?我沒有在'from','join'子句中的任何地方看到'outlet'。 – sstan