MemSQL为每个sql运行显示不同的结果

MemSQL为每个sql运行显示不同的结果,sql,sql-order-by,singlestore,Sql,Sql Order By,Singlestore,一个简单的MemSQL列表将在每次加载查询时按排序顺序显示结果 每次运行不同结果的查询:select*from VENDAS\u POR\u DIA 关于real序列(顺序)的表格: 但是,当我不使用orderby时,每次新运行的顺序都会发生变化。如何防止这种行为 如果不使用ORDER BY,可能会以任何顺序得到结果-顺序未指定,不同的数据库可能给出特定的顺序,也可能不给出具体的顺序,这取决于它们的实现。MySQL在某些情况下会以一定的顺序提供结果,但这不是语义保证。如果要订购,必须指定订购方式

一个简单的MemSQL列表将在每次加载查询时按排序顺序显示结果

每次运行不同结果的查询:
select*from VENDAS\u POR\u DIA
关于
real
序列(顺序)的表格:


但是,当我不使用orderby时,每次新运行的顺序都会发生变化。如何防止这种行为

如果不使用ORDER BY,可能会以任何顺序得到结果-顺序未指定,不同的数据库可能给出特定的顺序,也可能不给出具体的顺序,这取决于它们的实现。MySQL在某些情况下会以一定的顺序提供结果,但这不是语义保证。如果要订购,必须指定订购方式

请参阅(“结果行不按特定顺序显示”)和


您可以看到更多关于MySQL行为的答案,例如:。

SQL表和结果集表示无序集。如果您希望结果按特定顺序排列,请使用
order by
。我在MySQL上执行了相同的查询,如果我使用相同的数据运行相同的命令,结果将按插入行的顺序排列。您永远不应该依赖于观察到的行为是一致的行为,除非有文档支持它始终有效。
MySQL [bucket_8]> select * from VENDAS_POR_DIA order by 1;
+------------+------+
| data_envio | qtde |
+------------+------+
| 2017-09-04 |   63 |
| 2017-09-05 |   48 |
| 2017-09-06 |  813 |
| 2017-09-07 |  177 |
| 2017-09-08 |  679 |
| 2017-09-09 | 1034 |
| 2017-09-10 |   76 |
| 2017-09-11 |  332 |
| 2017-09-12 |  542 |
| 2017-09-13 |  414 |
| 2017-09-14 |  366 |
| 2017-09-15 |  517 |
| 2017-09-16 |  197 |
| 2017-09-17 |   23 |
| 2017-09-18 |  346 |
| 2017-09-19 |  520 |
| 2017-09-20 |  149 |
| 2017-09-21 |  288 |
+------------+------+
18 rows in set (0.20 sec)