[英]How to put max(number) condition into where clause in SQL Server 2008
[英]SQL / SSRS 2008 - How to combine 2 conditions into a single condition in the WHERE clause?
我有一個看起來很簡單的要求,但我無法使它正常工作。 我想在我的結果集中排除滿足兩個條件的特定記錄,請單擊以下圖片查看我當前的結果集: https : //i.stack.imgur.com/z93m3.png 。 我要排除任何同時具有Selling_price£84.99和vat_value£40.83的行,在我的情況下,這意味着我希望排除結果集圖像的最后一行。
我嘗試使用以下代碼作為我的SQL代碼:
SELECT created_by, sales_order_number, sales_order_credit_line, qty_credited, sales_order_line, selling_price, vat_value
FROM sales_order_credit
WHERE (selling_price <> 84.99 AND vat_value <> 40.83)
但是,一旦我去運行查詢,查詢設計器就會將我的代碼重新格式化為:
SELECT created_by, sales_order_number, sales_order_credit_line, qty_credited, sales_order_line, selling_price, vat_value
FROM sales_order_credit
WHERE (selling_price <> 84.99) AND (vat_value <> 40.83)
因為我的代碼現在是這樣寫的,所以它排除了所有售價為£84.99的行和所有vat_value為£40.83的行,這不是我想要的-我只想排除同時滿足這兩個條件的行。
我以前曾遇到過這個問題,但從未知道應該怎么做-真的很感謝您的幫助。
雅各布
編輯-評論回應
VKP-感謝您的建議,當我添加您的代碼時,它更改為:
SELECT created_by, sales_order_number, sales_order_credit_line, qty_credited, sales_order_line, selling_price, vat_value
FROM sales_order_credit
WHERE (NOT (selling_price = 84.99))
OR
(NOT (vat_value = 40.83))
再一次,它需要將兩者置於完全獨立的條件(由OR分隔)中-這不是我正在尋找的東西
無處不在的開發人員 -有所不同,如果執行代碼的重新格式化版本,它將排除第4行和第2行,而我只希望第4行被排除,因為它同時滿足這兩個條件,而第2行僅滿足其中一個條件(selling_price)
WHERE(銷售價格<> 84.99)或(vat_value <> 40.83)
自己嘗試: rextester
我認為接下來要針對您的情況做正確的事情:
SELECT created_by, sales_order_number, sales_order_credit_line, qty_credited, sales_order_line, selling_price, vat_value
FROM sales_order_credit
WHERE NOT (selling_price = 84.99 AND vat_value = 40.83)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.