SQL中

时间:2016-05-10 05:56:41

标签: sql sql-server

我在下面的屏幕截图中看到了输出的示例查询。

示例查询及其输出 enter image description here

但我应该使用“Like”条件在单行中写入相同的输出。我已尽力而为,并附上我在下面尝试过的内容:

查询的屏幕截图

enter image description here

4 个答案:

答案 0 :(得分:1)

不完全确定作业的参数是什么,但这可以产生相同的结果。

Select *
From City
Where City like '%Salem%' 
or City like '%Chennai%' 
or City like '%Bangalore%'

答案 1 :(得分:0)

尝试使用IN OPERATOR: -

Select *
From City
Where City IN ('Salem','Chennai','Banglore')

答案 2 :(得分:0)

试试这个,

SELECT *
FROM (
    VALUES ('Chennai')
        ,('Chennai,Bangalore')
        ,('Bangalore')
        ,('Bangalore,Salem')
        ,('Salem')
        ,('Covai,Salem')
        ,('Chennai,Covai,Salem')
        ,('Chennai,Bangalore,Covai,Salem')
    ) T(city)
WHERE city LIKE '%'
    OR city LIKE '%' + REPLACE(city, ',', '%')+'%'

答案 3 :(得分:0)

您必须使用其中一个答案中提到的多个OR条件,否则您可以执行此操作

WITH data as
(
SELECT'%Salem%' as city
union all
SELECT'%Chennai%' as city
union all
SELECT'%Bangalore%' as city
)

SELECT DISTINCT c.* FROM city c INNER JOIN data d ON c.city like d.city