簡體   English   中英

T-sql運行第一個查詢,然后執行CASE第二個查詢並輸出數據或“否”

[英]T-sql run 1st query and then CASE 2nd query and output data or 'No'

嘿,如果@blah等於Yes,我想輸出所有數據,否則輸出'No'。

這是我當前的查詢:

DECLARE @blah VARCHAR(MAX)

SET @blah = (SELECT 
   CASE WHEN 
      COUNT(email) = '1' THEN     'Yes'
      ELSE                        'No'
   END
FROM 
   usersTbl 
WHERE 
   email = 'someone@somewhere.com');
SELECT
   CASE WHEN 
      @blah =                     'Yes' THEN 
     (SELECT * 
      FROM 
         usersTbl 
      WHERE 
         email = 'someone@somewhere.com')
      ELSE                        'No'
   END
FROM 
   usersTbl;

目前,我收到的上述錯誤是:

如果未使用EXISTS引入子查詢,則只能在選擇列表中指定一個表達式。

我想念什么?

您可以在這里使用EXISTS。 這樣的事情。

if exists
(
    SELECT * 
      FROM 
         usersTbl 
      WHERE 
             email = 'someone@somewhere.com'
)
SELECT * 
      FROM 
         usersTbl 
      WHERE 
             email = 'someone@somewhere.com'
ELSE
    select 'No'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM