簡體   English   中英

SQL:WHERE子句多個條件

[英]SQL: WHERE clause multiple criteria

SELECT
    ((1.0 * (SELECT SUM(r.SalesVolume) 
             FROM RawData r
             INNER JOIN Product p ON r.ProductId = p.ProductId
             WHERE p.Distributor = 'TF1', 'WARNER')
GROUP BY p.Distributor)
/
(SELECT SUM(r.SalesVolume) FROM RawData r)*100)
;

上面的查詢給出了一個錯誤:

Lookup Error - SQL Server Database Error: Incorrect syntax near ','.

任何人都可以指出問題是什么? 我知道在這種情況下我不能使用OR / AND條件。 結果集必須有2行。

產品:

Distributor     
  WARNER              
  TF1                 
  WARNER              
  TF1  

原始數據:

   SalesVolume
        5
        6
        3
        4

也許是IN而不是=

SELECT
((1.0*(SELECT SUM(r.SalesVolume) FROM RawData r
INNER JOIN Product p
ON r.ProductId = p.ProductId
WHERE p.Distributor in ('TF1','WARNER'))
/
(SELECT SUM(r.SalesVolume) FROM RawData r)*100)
;

你應該用

WHERE p.Distributor IN ('TF1','WARNER')

暫無
暫無

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

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