我有一個包含客戶賬戶的電子表格,當我們得到一個新賬戶時,它會被添加到使用參考賬戶號碼上,例如Anderson Electrical將是AND01等。我試圖使用sql從每個字母變體中帶回最高數字,例如如果AND01已經存在並且我們公司的最高價值是AND34,那麼它將僅帶回AND34而不是1到34.sql中返回多個最大值在一列中
每個帳戶都有公司名稱的前3個字母,後面跟着下一個數字。
希望我已經解釋了這口井enouh有人理解:)
我有一個包含客戶賬戶的電子表格,當我們得到一個新賬戶時,它會被添加到使用參考賬戶號碼上,例如Anderson Electrical將是AND01等。我試圖使用sql從每個字母變體中帶回最高數字,例如如果AND01已經存在並且我們公司的最高價值是AND34,那麼它將僅帶回AND34而不是1到34.sql中返回多個最大值在一列中
每個帳戶都有公司名稱的前3個字母,後面跟着下一個數字。
希望我已經解釋了這口井enouh有人理解:)
不知道如果這就是你在問什麼,但如果你需要找到最大值爲字符串的一部分,您可以用子做。
;WITH tmp AS(
SELECT 'AND01' AS Tmp
UNION ALL
SELECT 'AND34'
) SELECT MAX(SUBSTRING(tmp, 4, 2)) FROM tmp GROUP BY SUBSTRING(tmp, 0, 3)
這是一個小測試查詢,返回34,因爲我的前3個字母分組,你可能想:所以,如果你需要找到包含這些值的列數最高,你可以用做按某個ID分組。
對於單參考客戶:
select max(AcctNum)
from Accounts
where left(AcctNum, 3) = <reference account>
如果你想爲所有一次:
select left(AcctNum, 3) as ReferenceAcct, max(AcctNum)
from Accounts
group by left(AcctNum, 3)