Oracle版本:10g中的Oracle SQL - 找到一個數據集的最小值,但在MIN計算中排除的值
我試圖使用MIN
功能找到一個數據集的最小/最低值。我正在執行的列MIN
是VARCHAR2
列。該列將包含一個數字值,或值爲' - ',表示該值不適用。
當在列上執行MIN()
函數時,總是返回' - '。
我想找到一種方法來排除' - '從MIN語句中計算。我無法在語句中使用WHERE子句來過濾出帶有' - '的列,因爲這會排除有效數據。
注意:這是一個巨大的遺留查詢(500多行),因此重寫這個大規模查詢並不是真正的選擇。
我完全同意不將數字存儲爲varchar。我從中提取的列是varchar2的原因是因爲它是使用NVL函數來確定它是否應顯示' - '或數字的視圖。 – contactmatt
@Contactmatt然後我會建議在其他表/程序中檢查對該視圖的引用並解決該問題。如果數據是'NULL',那麼我們傳遞'NULL'或者其他一些你知道數字的數值,比如'-2147483647' – JNK