如果不匹配則返回null值

2022-06-13 21:06:09 字數 820 閱讀 5376

我遇到乙個問題,因為某些原因我無法確定.我正在嘗試編寫乙個連線兩個表的查詢,其中可能在表中找不到匹配項.如:

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,其他都是多餘的,後端只是為了...