如何使用通配符(LIKE)和数组(IN)进行SELECT?

时间:2011-12-15 12:57:26

标签: sql sql-like

在SQL中,如果要使用通配符执行SELECT,则使用:

SELECT * FROM table_name WHERE field_name LIKE '%value%'

如果您想使用可能值的数组,请使用:

SELECT * FROM table_name WHERE field_name IN ('one', 'two', 'three')

但是,如果你想同时使用通配符和数组,你会怎么做?

有点像:

SELECT * FROM table_name WHERE field_name LIKE IN ('%one', '_two', 'three[abv]')

2 个答案:

答案 0 :(得分:11)

SELECT *
FROM table_name
WHERE field_name LIKE '%one'
   OR field_name LIKE '_two'
   OR field_name LIKE 'three[abv]'

答案 1 :(得分:3)

您可以使用如下查询之类的语句加入:

int

我创建此函数以拆分字符串:

SELECT * FROM table_name t 
JOIN dbo.Split('one,two,three',',') s ON t.field_name LIKE N'%'+s.item+'%'