此查询:
SELECT count(*), floor(rand()*2) AS stuff FROM information_schema.tables GROUP BY stuff;
有奇怪的行为。成功完成大约一半的时间会产生如下结果:
+----------+-------+
| count(*) | stuff |
+----------+-------+
| 41 | 0 |
| 45 | 1 |
+----------+-------+
2 rows in set (0.00 sec)
(计数略有不同。)
但是另一半时间它给出了错误
ERROR 1062 (23000): Duplicate entry '1' for key 'group_key'
(有时会说' 0'而不是' 1'。)
我对发生任何特定行为并不感兴趣。我只想了解发生了什么。
我使用的是MySQL 5.5.41-0ubuntu0.14.04.1版(Ubuntu)