我有以下查询:
o.upvoteComment = function(post, comment) {
return $http.put('/posts/' + post._id + '/comments/' + comment._id + '/upvote', null, {
headers: {Authorization: 'Bearer '+auth.getToken()}
}).success(function(data) {
comment.upvotes += 1;
});
};
MailingList 表中有大约20列,其中一列名为地址。此列包含一些包含逗号的字段,我需要将其取出。所以我将查询更新为:
SELECT * FROM MailingList
但现在我有两个地址列。有没有办法只显示一个地址列,同时仍然对所有其他列使用通配符(*)?
答案 0 :(得分:3)
没有办法做到这一点,尽管明确列出你想要的列是一个好主意。
答案 1 :(得分:1)
您可以使用以下查询进行操作:
- 将数据存入临时表
- 删除不需要的cloumns
- 获取结果并删除临时表
醇>
SELECT *, REPLACE(Address, ',', '') AS Address2
INTO #TempTable
FROM MailingList
ALTER TABLE #TempTable
DROP COLUMN [Address]
SELECT * FROM #TempTable
DROP TABLE #TempTable
答案 2 :(得分:0)
我同意暗影 - 如果可以的话,请避免使用*外卡...
我知道列出大表的select语句中的所有列都很痛苦所以这里有一个你可能不知道的快速捷径:在SQL Server Management Studio中,浏览对象资源管理器并找到你的表想要选择(MailingList)。右键单击它以查看上下文菜单,然后选择"脚本表为"那么"选择到"那么"新的查询编辑器窗口"。这将创建一个新的select语句,每列都拼写出来。将来,使用此方法创建select语句,查询,过程等,而不是*通配符。性能更好,看起来更好: - )
然后您可以使用replace函数解决别名问题。