[英]multiple case statement in VBA script
我在 Excel VBA 中編寫這些多個“case when”語句時遇到錯誤。腳本在 SQL 服務器中運行完美,但我無法在 Excel VBA 中正確格式化它,以便它可以正確運行。 請幫忙?!
這是在 VBA 中寫入長字符串的方式:
StrQuery = "Select" & _
" case when srvprovid like '01%' then 'AL'" & _
" WHEN srvprovid like '02%' then 'AK'" & _
" WHEN srvprovid like '03%' then 'AR'" & _
" ..."
這就是我建議你做的(只是一個展示想法的示例,沒有編寫完整的代碼):
DECLARE @sample TABLE (srvProvId VARCHAR(10), id INT IDENTITY);
INSERT INTO @sample (srvProvId) VALUES
('010'),
('01'),
('020'),
('030'),
('040');
DECLARE @states VARCHAR(1000) = 'AL,AK,AR,AZ,CA,CO,CT'; -- DE,DC,FL...
DECLARE @tally TABLE (id INT IDENTITY, abrv CHAR(2));
INSERT @tally (abrv)
SELECT value FROM STRING_SPLIT(@states, ',') ;
SELECT *
FROM @sample t1
LEFT JOIN @tally t2 ON t1.srvProvId LIKE RIGHT('0'+CAST(t2.id AS VARCHAR(2)),2)+'%';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.