我有这个有多列的地址表。我想将街道号和街道名称列连接为地址,并检查地址是否唯一。
SELECT ( street_num + ' ' + street_name ) AS Addr
FROM [propertyaddress_workfinal] AS t1
INNER JOIN (SELECT ( street_num + ' ' + street_name ) AS A2
FROM [propertyaddress_workfinal]) AS t2
ON t1.addr = t2.a2
WHERE Count(*) > 1
我收到错误并指出无效的列名称' Addr'。
在这里做些傻事。
答案 0 :(得分:2)
这是做到这一点的方法
SELECT street_num + ' ' + street_name AS Addr
FROM [propertyaddress_workfinal]
GROUP BY street_num + ' ' + street_name
HAVING Count(*) > 1
虽然连接的空格不是你的重复匹配
的组成部分GROUP BY street_num, street_name
如果在这两列上有复合索引,效果会更好。