我正在几个不同的数据库平台上使用Chinook database进行一些测试。
以下是我正在测试的一个查询:
SELECT t.`TrackId`
FROM `InvoiceLine` AS l
RIGHT OUTER JOIN `Track` AS t
ON l.`TrackId` = t.`TrackId`
WHERE l.`TrackId` IS NOT NULL
以下是我所看到的行为:
在查询中添加DISTINCT
总是在所有测试中产生1984行,这使我怀疑MySql.Data ADO.NET提供程序对检索的数据不诚实。
关于这里发生了什么的任何预感?
将选择列表更改为简单的COUNT(*)会导致2240.我怀疑MySql.Data ADO.net提供程序中存在错误。数据库引擎本身似乎表现正常。