MySql结果行计数不正确

时间:2014-11-02 04:32:29

标签: mysql sql .net ado.net

我正在几个不同的数据库平台上使用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

以下是我所看到的行为:

  • MySql(MySql.Data):1984行
  • MySql(phpMyAdmin):2240行
  • MySql(DevArt Provider):2240行
  • Sql Server:2240行
  • PostgreSQL:2240行
  • Sqlite(LEFT OUTER JOIN; sqlite不支持RIGHT):2240行

在查询中添加DISTINCT总是在所有测试中产生1984行,这使我怀疑MySql.Data ADO.NET提供程序对检索的数据不诚实。

关于这里发生了什么的任何预感?

更新

将选择列表更改为简单的COUNT(*)会导致2240.我怀疑MySql.Data ADO.net提供程序中存在错误。数据库引擎本身似乎表现正常。

0 个答案:

没有答案