有没有一种方法可以按照ID

时间:2019-10-13 19:52:11

标签: sql

有没有办法。我可以按ID升序保存表格。

我想从我正在使用的现有表中创建新表。 SELECT id,按ID asc从旧表顺序将其命名为newtable。因此,它创建表,但新表不按ID升序存储。我想将ID升序存储在新表中。

SELECT AirlineData2019.[id]
      ,AirlineData2019.[DestAirportID]
      ,AirlineData2019.[DestAirportSeqID]
      ,AirlineData2019.[DestCityMarketID]
      ,AirlineData2019.[Dest]
      ,AirlineData2019.[DestCityName]
      ,AirlineData2019.[DestState]
      ,AirlineData2019.[DestStateFips]
      ,AirlineData2019.[DestStateName]
      ,AirlineData2019.[DestWac] 
 INTO Destination FROM AirlineData2019 ORDER BY id;
```[![I want to save my data in that way in new table][1]][1]


  [1]: https://i.stack.imgur.com/c0h0t.png

2 个答案:

答案 0 :(得分:1)

SQL表表示无序集。因此,将它们按“顺序”存储实际上没有任何意义。实际上,大多数数据库都支持聚簇索引,聚簇索引确实具有顺序。

但是即使使用聚集索引,也无法满足您的期望-因为表中的查询不能保证以特定顺序返回结果,除非您使用{{1} }。

我建议您将order by列定义为主键,或者至少在其上创建索引。然后,当您使用id时,查询将使用索引。

答案 1 :(得分:0)

简短答案-不。

SQL表本质上是无序的。如果要按特定顺序检索行,则在查询时只需使用order by子句即可(就像原始查询一样)。