use*_*888 8 sql sql-server sql-server-2008
在表中,2个字段ID为int,Number为小int,我想连接两个字段并显示为字符串
eg: ID = 101 and Number = 9
output : 101.9
Run Code Online (Sandbox Code Playgroud)
要在ID和数字之间添加点吗?如何在SQL中查询?
Sac*_*hin 31
您可以将整数字段CAST到varchar,然后根据需要连接它们.
DECLARE @ID INT
DECLARE @Number INT
SET @ID = 101
SET @Number = 9
SELECT CAST(@ID AS VARCHAR(10) ) +'.'+ CAST(@Number AS VARCHAR(10) )
Run Code Online (Sandbox Code Playgroud)
Kri*_*ten 10
在 SQL 2012(及更高版本)中,我现在发现使用 CONCAT 更容易(性能也更好)
SELECT CONCAT(@ID, '.', @Number)
Run Code Online (Sandbox Code Playgroud)
任何 NULL 元素都被转换为空字符串,防止 NULL 传播,这样就不必做更复杂的事情:
SELECT ISNULL(CAST(@ID AS VARCHAR(10) ), '') +'.'+ ISNULL(CAST(@Number AS VARCHAR(10) ) , '')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
50798 次 |
| 最近记录: |