SELECT 'Add or remove a keyword' AS 'Keyword', '1' AS 'row number'
UNION
SELECT '---------------------', '2'
UNION
SELECT
CASE
WHEN @list_item = 'duration'
THEN (SELECT duration FROM durationTable)
END
CASE
WHEN @list_item = 'location'
THEN (SELECT location FROM locationTable)
END
, '3'
ORDER BY 2
문제는 이것이 지속 시간과 위치가 하위 쿼리로 선택되며 하위 쿼리가 하나의 결과로 제한된다는 것입니다. 또한 올바른 구문을 파악할 수없는 것 같습니다. 쿼리가 하위 쿼리가 아니므로 수준을 높이십시오.
union/select가 허용하는 구조를 유지하면서 마지막 비트를 쿼리하는 테이블을 변경하는 중 하나의 결과 대신 전체 테이블 열을 검색하는 방법이 있습니까?
팁이 있습니까? 봐 주셔서 대단히 감사합니다!
왜 'WHERE' 절 대신에'CASE'를 사용 했습니까? – JNK
@JNK, 맞습니다. CASE로 복잡하게 만드는 대신 간단한 WHERE 절을 사용해야했습니다. 나는 더 나은 해결책이기 때문에 당신의 대답을 upvoted했습니다. – PaulStock