2016-01-15 94 views
0

我想連接來自兩個單獨列的字符串。麻煩的是,我需要串聯中的第一個字符串是第一個字母。以字母順序連接字符串

例如:

Column 1  Column 2  Concatenation 
def    abc    abcdef 
abc    def    abcdef 

有什麼辦法來Access中做到這一點? SQL Server也可能是一個選項,但對我來說,保留在Access中會更容易。

回答

2

對於兩個字符串,你可以留在訪問:

select iif(column1 < column2, column1 & column2, column2 & column1) as concatenation 

如果你有行中的兩個以上的字符串,那麼SQL Server的將是一個更好的選擇。

0

SQL Server版本

create table a 
(col1 nvarchar(100) 
,col2 nvarchar(100) 
) 
insert into a values('abc','def') 
insert into a values('def','abgggccz') 
insert into a values('xyzabc','def') 
insert into a values('def','xyzabc') 
insert into a values('axyzabc','def') 
insert into a values('adef','acxyzabc') 
insert into a values('abcd','x') 

查詢

select 
case when 
LOWER(col1)>LOWER(col2) 
then col2+''+col1 
else 
col1+''+col2 
end 
from a 

結果

abcdef 
abgggcczdef 
defxyzabc 
defxyzabc 
axyzabcdef 
acxyzabcadef 
abcdx 

注:如果您使用的是SQL服務器,然後,如果你想連接越多,你可以這樣做比2串

相關問題