1
我需要幫助創建一個只帶有郵政編碼後綴的查詢。有些人有4位數的擴展名,有些則不是。我只需要那些後綴,而不是整個郵政編碼。僅提供郵政編碼後綴結果
例如:66227-4567 - 我試圖讓 「4567」
我已經嘗試過失敗;
- case語句
- 數 - 不知道爲什麼,但想我會試試看
- 權(郵編,4) - 但這並不佔郵政編碼 沒有了後綴
我現在的想法和需要一些幫助
我需要幫助創建一個只帶有郵政編碼後綴的查詢。有些人有4位數的擴展名,有些則不是。我只需要那些後綴,而不是整個郵政編碼。僅提供郵政編碼後綴結果
例如:66227-4567 - 我試圖讓 「4567」
我已經嘗試過失敗;
我現在的想法和需要一些幫助
看看這有助於:
declare @Tab Table (Col nvarchar(100))
Insert into @Tab values ('66227-4567')
Insert into @Tab values ('66227-45')
Insert into @Tab values ('66227-4')
Insert into @Tab values ('66227-')
Insert into @Tab values ('66227')
Insert into @Tab values ('66227-456712345')
Insert into @Tab values ('66227- ')
Insert into @Tab values ('')
Select NULLIF(LTRIM(RTRIM(SUBSTRING(Col, NULLIF(CHARINDEX('-', Col),0)+1, LEN(Col)))),'') from @Tab
我能想到的,我想會的工作,最簡單的是
SELECT ZipCode FROM MyTable
WHERE ZipCode LIKE '%-____'
'情況下CHARINDEX( ' - ',COL)> 0,則向右(COL,4)其他'end' –
你是在正確的軌道上用'RIGHT(ZIPCODE,4)'。詢問ZIPCODE的長度,如果它大於6個字符(這將適用於zip可能爲'12345-'的情況),然後應用RIGHT功能。作爲一個有趣的事實,最後這4位數字是郵政編碼的「加4」部分。 –
很酷!非常感謝克里斯 – benjo