我在SQL Server表中有2列。
一个是像'Attn:firstname lastname'这样的字符,另一列是与该人相关联的数字。
我无法弄清楚如何查询它们以便信息显示为:
Lastname, Firstname - number
答案 0 :(得分:1)
如果您在SQL Server中,则可以执行此操作
Select Col1 + ' - ' + Col2
From dbo.{Table}
Where {Conditions}
如果你的意思是你需要删除“attn:”,你可以做这样的事情
Select substring(Col1, 5,len(Col1)-5) + ' - ' + Col2
From dbo.{Table}
Where {Conditions}
答案 1 :(得分:0)
不是硬编码':'的索引,而是可以做这样的事情
SELECT REPLACE(RIGHT(Col1, (LEN(Col1) - CHARINDEX(':', Col1)-1)),' ',', ') + ' - ' + Col2
要测试此功能,您可以运行以下
DECLARE @column1string AS VARCHAR(30), @column2number AS VARCHAR(10)
SET @column1string = 'Attn: Firstname Lastname'
SET @column2number = '12345678'
SELECT REPLACE(RIGHT(@column1string, (LEN(@column1string) - CHARINDEX(':', @column1string)-1)),' ',', ') + ' - ' + @column2number