我之前从未注意到:
SELECT A,*
FROM Table
ORDER BY A
它给了我Ambiguous column name
错误。 *
当然包含A
,但是sql server会将上述查询中的同一列A
作为两个不同的列吗?这背后的原因是什么?
答案 0 :(得分:1)
这是因为输出具有相同的名称
mine_count
它会起作用
答案 1 :(得分:1)
如果您正在寻找是/否答案,那么'是',您是对的。 SQL选择一个列两次,一个是显式的,另一个是隐式*调用。 SQL不了解您要排序的是哪一个。 对帖子的第一条评论显示您可以使用列的别名。