SQL查询返回不同的行数,具体取决于所选的列

时间:2016-03-03 16:00:52

标签: sql sql-server tsql

感谢迄今为止的贡献。经过多次挖掘后,我将重新陈述问题(实际上是问题的标题)如下:

我从包含多个列的视图中仅选择2列。如果我选择所有列,视图将返回50,497行,但当我只选择2列时,只返回50,496(即少1),这些是[Patient_ID](bigint列)和[Condition_Code](varchar(6)列)

版本1:

SELECT * FROM [vw_Query1]
  

返回50,497行。

可是:

SELECT [Patient_ID], [Condition_Code] FROM [vw_Query1]
  

返回50,496行。

如果需要,我可以发布[vw_Query1]的代码,但是如果没有使用GROUP BY子句,那么在基本层面上如何理解这一点对我来说是关键问题。

更新:

事实证明,如果我排除一个特定的列,我得到的行数较少,为50,496。此列在使用区分大小写的排序规则时是独一无二的。我仍然不明白为什么它会放弃一个特定的行,但至少我接近理解。

0 个答案:

没有答案