Sql server TSQL将这些多案例查询转换为一个查询

Sql server TSQL将这些多案例查询转换为一个查询,sql-server,tsql,Sql Server,Tsql,我有以下CASE查询,如果找到任何内容,则返回1,否则返回0。我想将它们转换为一个查询,如果其中任何一个为真,则返回1,否则返回0。我怎样才能完成这个 SELECT CASE WHEN count(PLACE.CODE) > 0 THEN 1 ELSE 0 END FROM PLACE WHERE STYLE = 'RED' AND RULES = 'NO' SELECT CASE WHEN count(GARDEN.AREA) > 0 THEN 1 ELSE 0 END FR

我有以下CASE查询,如果找到任何内容,则返回1,否则返回0。我想将它们转换为一个查询,如果其中任何一个为真,则返回1,否则返回0。我怎样才能完成这个

SELECT CASE WHEN count(PLACE.CODE) > 0 THEN 1 ELSE 0 END
FROM PLACE
WHERE STYLE = 'RED'
AND RULES = 'NO'



SELECT CASE WHEN count(GARDEN.AREA) > 0 THEN 1 ELSE 0 END
FROM GARDEN
WHERE PLACE = 'GROUND'
AND MAZE = '1'


SELECT CASE WHEN count(place_area.AVAILABLE_AREA) > 0 THEN 1 ELSE 0 END
FROM PLACE_AREA as place_area
INNER JOIN USED_PLACE as used_place
    ON used_place.COLOR = 'RED'
    AND used_place.MAKE = 'INDUSTRY'
WHERE place_area.CODE = 'FLOOR'
AND place_area.DANCE = '0'

如果我理解正确,您可以
union all
结果并计算
sum
,如果
sum>0
,则至少有一个
1

Select Case When Sum(x.col) > 0 THEN 1 ELSE 0 END from
(
SELECT CASE WHEN count(PLACE.CODE) > 0 THEN 1 ELSE 0 END as col
FROM PLACE
WHERE STYLE = 'RED'
AND RULES = 'NO'

Union All


SELECT CASE WHEN count(GARDEN.AREA) > 0 THEN 1 ELSE 0 END as col
FROM GARDEN
WHERE PLACE = 'GROUND'
AND MAZE = '1'

Union All

SELECT CASE WHEN count(place_area.AVAILABLE_AREA) > 0 THEN 1 ELSE 0 END as col
FROM PLACE_AREA as place_area
INNER JOIN USED_PLACE as used_place
    ON used_place.COLOR = 'RED'
    AND used_place.MAKE = 'INDUSTRY'
WHERE place_area.CODE = 'FLOOR'
AND place_area.DANCE = '0'
) x

如果我理解正确,您可以
union all
结果并计算
sum
,如果
sum>0
,则至少有一个
1

Select Case When Sum(x.col) > 0 THEN 1 ELSE 0 END from
(
SELECT CASE WHEN count(PLACE.CODE) > 0 THEN 1 ELSE 0 END as col
FROM PLACE
WHERE STYLE = 'RED'
AND RULES = 'NO'

Union All


SELECT CASE WHEN count(GARDEN.AREA) > 0 THEN 1 ELSE 0 END as col
FROM GARDEN
WHERE PLACE = 'GROUND'
AND MAZE = '1'

Union All

SELECT CASE WHEN count(place_area.AVAILABLE_AREA) > 0 THEN 1 ELSE 0 END as col
FROM PLACE_AREA as place_area
INNER JOIN USED_PLACE as used_place
    ON used_place.COLOR = 'RED'
    AND used_place.MAKE = 'INDUSTRY'
WHERE place_area.CODE = 'FLOOR'
AND place_area.DANCE = '0'
) x

我得到的
列名'col'
无效,请注意您案例结尾处的
列,因为statementah遗漏了该列。感谢我得到了无效的列名“col”
,请注意案例结尾处的col,因为statementah遗漏了这一点。谢谢