我有兩個表SQL服務器:與選擇的情況下選擇語句嵌套
- 表1中,列:A,B,C
- 表2中,列:A,d,E
我想從表1中選擇全部,並添加一個附加字段。
如果在table_2.A中存在字符串列table_1.A的內容,則爲TRUE,否則爲FALSE。
我很想告訴你我試過的東西,但沒有什麼可以接近。我可以用SELECT CASE語句來做到這一點,但我無法弄清楚如何同時選擇全部。
感謝
我有兩個表SQL服務器:與選擇的情況下選擇語句嵌套
我想從表1中選擇全部,並添加一個附加字段。
如果在table_2.A中存在字符串列table_1.A的內容,則爲TRUE,否則爲FALSE。
我很想告訴你我試過的東西,但沒有什麼可以接近。我可以用SELECT CASE語句來做到這一點,但我無法弄清楚如何同時選擇全部。
感謝
使用CASE
SELECT
table1.A,
table1.B,
table1.C,
CASE WHEN table2.A IS NULL THEN 'FALSE' ELSE 'TRUE' END
FROM
table1
LEFT OUTER JOIN
table2
ON table1.A = table2.A
你需要一個左外連接並使用的情況下比較這兩個表時columnab不爲空,那麼真,否則返回false嘗試
這在Table1中每個記錄只會有一行。
SELECT Table1.*,
ISNULL([Found],'False') [Found]
FROM Table1
OUTER APPLY (
SELECT TOP 1
'True' AS [Found]
FROM Table2
WHERE Table2.A LIKE '%' + Table1.A + '%'
)
你的意思是,如果Table1.A的文本是Table2.A的文本任何你想要的字「真」或你想從表2的東西包括在內? – n8wrl
是的,我不需要表2中的任何東西。我已經標記了適合我的答案。 考慮它是這樣的:表1 =產品清單和表格2 =清單清單。所以這個查詢會給股票的任何東西一個TRUE,並且對任何股票都是FALSE。希望這是有道理的。 – stevo22