Skip to main content
 首页 » 编程设计

sql-server中如何在sql server中自动连接三个字符串前两个字符

2025年01月19日13shanyou

I have three columns in a table like name,village,state. 
Name='Samba Siva' 
Village='Kodur' 
State='Andra pradesh' 

我想串联三列,例如第一列的前两个字符和第二列的第一个字符以及第三列的第一个字符和当前年份的最后两位数字。

我已经尝试过这样的

select right(replace(name,2)+Cast(cast(coalesce(max(village),0) as varchar) as varchar),2) customercode 
from(select top 1 customercode from K_FS_DistributorDetails order by customercode)r; 

但它不起作用。即:我想要像这样的输出 代码='SAKOA14'。 这里 14 是当前年份的最后两位数字。 请告诉我如何编写查询请帮助我......

请您参考如下方法:

您正在寻找这样的东西吗?

SELECT TOP 1 UPPER(LEFT(Name, 2) + LEFT(Village, 2) + LEFT(State, 1) + CONVERT(VARCHAR, YEAR(GETDATE()) % 100)) code 
  FROM K_FS_DistributorDetails 
 ORDER BY customercode DESC 

输出:

|    CODE | 
|---------| 
| SAKOA14 | 

这里是SQLFiddle 演示