我知道我在這裏用動態SQL打破了一些規則,但我仍然需要問。我已經繼承了一張表,其中包含我需要從中提取記錄的每張票的一系列標記。使用AND而不是OR邏輯的「IN」等效?
簡單的例子......我有一個包含「‘蘋果’,‘桔子’,‘葡萄’」的數組和我試圖檢索包含包含在陣列中的所有項目中的所有記錄。
我的SQL是這樣的:
SELECT * FROM table WHERE basket IN (" + fruitArray + ")
這當然是等價的:
SELECT * FROM table WHERE basket = 'Apples' OR basket = 'Oranges' OR basket = 'Grapes'
我很好奇,如果有,其工作方式相同(陣列功能),除了它使用AND而不是OR,以便我可以獲得與以下相同的結果:
SELECT * FROM table WHERE basket LIKE '%Apples%' AND basket LIKE '%Oranges%' AND basket LIKE '%Grapes%'
我可能只是手動生成整個字符串,但如果可能的話,想要更優雅的解決方案。任何幫助,將不勝感激。
簡答題。不可以。您可以構建子查詢,但我不認爲這就是您要求的。 – drdwilcox
'IN'不是順便說一句。這是一個運營商。 –
「籃子」欄是什麼類型? – connec