我知道我在这里用动态 SQL 打破了一些规则,但我仍然需要问。我继承了一个表,其中包含我需要从中提取记录的每张票的一系列标签。
简单的例子......我有一个包含“'Apples','Oranges','Grapes'”的数组,我正在尝试检索包含数组中包含的所有项目的所有记录。
我的 SQL 如下所示:
SELECT * FROM table WHERE basket IN ( " + fruitArray + " )
这当然相当于:
SELECT * FROM table WHERE basket = 'Apples' OR basket = 'Oranges' OR basket = 'Grapes'
我很好奇是否有一个与 IN ( array ) 工作相同的函数,除了它使用 AND 而不是 OR 以便我可以获得与以下相同的结果:
SELECT * FROM table WHERE basket LIKE '%Apples%' AND basket LIKE '%Oranges%' AND basket LIKE '%Grapes%'
我可能只是手动生成整个字符串,但如果可能的话,我想要一个更优雅的解决方案。任何帮助,将不胜感激。