我遇到乙個問題,因為某些原因我無法確定.我正在嘗試編寫乙個連線兩個表的查詢,其中可能在表中找不到匹配項.如:
select
table1.idfield,table2.idfield
from
table1
left outer join
table2 on table1.personid = table2.personid
where
(table1.idfield = '12345')
and (table2.category = 'foo')
如果表2中沒有匹配,則不返回任何內容.但是,如果沒有匹配,我需要它為該列返回乙個null,並返回table1的值.
我已經改變了join與我能想到的一切,但沒有成效.
table2.category可以包含多個其他值,所以執行or is null型別的交易將無法正常工作.
所以,如果table2.category =』foo』沒有匹配,我還需要返回:
12345 | null
有什麼建議麼?
解決方法
將table2的條件從您的where子句中移動到您的join中.
select
table1.idfield,table2.idfield
from
table1
left outer join table2
on table1.personid = table2.personid
and table2.category = 'foo'
where
table1.idfield = '12345'
不讓null值返回前端
場景 有時候我們返回給前端的資料是null的,而這些為null的值前端也不需要,我們就沒必要吧null值返回給前端。第一種方法 在類的上面加註解 import com fasterxml jackson annotation jsoninclude jsoninclude jsoninclude.i...
ajax請求返回null不走success
1.情況描述 ajax傳送成功,後台也成功響應請求,並返回了json資料,通過chrome監聽請求也可以看到響應的json資料,但是就是不進success方法,反而跑到error方法中了 前端 12 3456 78910 1112 1314 1516 17 ajax url viewoperate ...
不返回前端為null的字段
對於返回給前端的json格式資料,我們只使用了其中部分資料,其他資料沒有使用上,但是也響應出來了,一方面 觀,第二方面占用頻寬。舉個例子 專案中常常使用model進行資料互動,假如有user這樣乙個model,傳給前端的json物件是這樣 實際上前端只需要id和name,其他都是多餘的,後端只是為了...