我在 SQL 中有一個視圖查詢。如果我的查詢中的值是正數,那么我現在沒有問題。但是當值為負時,就會進行錯誤的操作。這是我如何將回傳正值和負值的操作與查詢時的情況分開。
我的查詢是:
CASE WHEN ((NM.Min <= TT._VALUE) AND (TT._VALUE <= NM.Max)) THEN 1 ELSE 0 END AS Min_max_Status
這里,當NM.Min和NM.Max值為正時,比如當NM.Min = 10 NM.Max = 100時,無論我的TT._VALUE取什么值都沒有問題。但是當 NM.Min = -10、NM.Max =-100 和 TT._VALUE = -90 時,它會在 Min_max_Status 列中列印 0 值,因為它在這里沒有提供小-大相等。我該如何解決這個問題。預先感謝您的幫助
uj5u.com熱心網友回復:
首先,我們可以CASE使用以下方法重寫您的運算式BETWEEN:
CASE WHEN TT._VALUE BETWEEN NM.Min AND NM.Max THEN 1 ELSE 0 END AS Min_max_Status
至于你的NM.Min = -10, NM.Max = -100, 和的例子TT._VALUE = -90,我認為你應該把它表述為:
NM.Min = -100, NM.Max = -10, and TT._VALUE = -90
使用上述版本將產生預期的輸出。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/533982.html
標籤:数据库
上一篇:獲取具有所需技能的工人串列
