2017-10-04 67 views
-1

我在SQL中有兩個表,我正在查找第三個表的參考號。什麼我試圖去是一個語法,上面寫着:SQL - 當值不是數字時

CASE 
    WHEN NUM (TABLE 1) = NAME THEN LEFT(NUM (TABLE 1),14) 
    WHEN NAME = ''UK'' THEN LEFT(NUM (TABLE 1),11) 
    **** WHEN LEFT(NUM (TABLE 1), 3) IS NOT NUMERIC THEN LOOK FOR NUM IN TABLE 2*** 
    ELSE ACCGRPNUM 
END AS ID, 

我已經插入到這個(表1)顯示,其中兩個表開始發揮作用。

在此先感謝

+2

你可以把正確的表架構。當模式不存在時,這看起來更像算法。 – Amit

+0

表格定義將有助於回答您的問題。 – thundercougarfalcon

+0

如果你只是谷歌它有噸噸的參考。 – Eric

回答

0

SQL Server具有ISNUMERIC函數。它應該看起來像這樣

WHEN ISNUMERIC(LEFT(num, 3)) = 0 THEN ... 
+0

謝謝,這個函數的問題是第三個字符不會總是0,它會有所不同。這就是爲什麼我試圖找出如果它不是數字然後如何說... – Carlos80

+0

如果字符串的第一個(最左邊的)3個字符不能被解析,ISNUMERIC(LEFT(value,3))返回0轉換爲數字數據類型(int,float,decimal等)。 – zambonee

相關問題