表不是以相同的顺序mySQL
我使用load data local infile命令将一个csv文件加载到mySQL中。 当我查看表格时,行的顺序与csv文件不同。 有没有办法让他们在同一个秩序。
在关系数据库表中没有任何固有的“订单”。 如果要以特定顺序查看行,则应在SELECT
语句中使用ORDER BY
子句。 如果您正在通过某个用户界面查看数据,则由用户界面来提供该function(或不提供)。
SQL表格表示无序集合。 没有sorting。 有一个技巧,但是。 我假设你正在使用load data infile
。 定义你的表有一个自动递增的标识列:
create table . . . ( tableId int auto_increment primary key, . . . );
然后,当您将文件中的数据加载到表中时,可以列出除tableId
(或适当的字段) 之外的所有字段。 并明确使用set testId = NULL
。
然后您可以使用以下方式访问表格:
select t.* from tt order by tableId;
不幸的是,我从来没有发现文件,这是保证按照插入顺序递增ID。 不过,我相信它在实践中是有效的。