2014-05-22 68 views
0

我有一个愚蠢的问题。我有geometry点的信息表,我想在一列中选择坐标XY。的query 1在一列中显示两个整数

select point.STY , point.STX from vertex where id =20 

结果是:

1 |158 | 361 

但是当我试图使它像:

select point.STY + ' ' + point.STX from vertex where id =20 

我得到的158+361总结为INT:

1 | 519 

和重新我想得到的是:

1 | 158 361 

任何人都可以给我一个提示我做错了什么?

回答

0

它们是数字字段,因此数据库假定您想要以数学方式添加它们。迫使它把他们当作VARCHAR文本字段,通过使用CAST命令将一个数据类型到另一个,并根据需要它会做:

SELECT CAST(point.STY AS VARCHAR) + ' ' + CAST(point.STX AS VARCHAR) 
FROM vertex 
WHERE id = 20 
0

你需要转换INT值VARCHAR:

select CAST(point.STY AS VARCHAR) + ' ' + CAST(point.STX AS VARCHAR) 
from vertex 
where id =20