Oracle DB简单SELECT列顺序很重要

0 sql database oracle

我在Oracle DB中执行一个简单的SELECT语句,需要按特定的顺序选择列.例:

表A有100个属性,其中一个是"章",它出现在表中列的某个位置.我需要首先选择带有"章节"的数据,然后选择其余的列,而不是特定的顺序.基本上,我的陈述需要阅读如下内容:

SELECT a.chapter, a. *the remaining columns* FROM A

此外,我不能简单地键入:

SELECT a.chapter, a.*

因为这会选择"章节"两次.

我知道SQL语句看起来很简单,但如果我知道如何解决这个问题,我可以将这个思想推断到更复杂的领域.另外,我们假设我不能只是滚动查找"章节"列并将其拖到开头.

谢谢.

kmk*_*lan 7

你不应该在程序中选择*.随着您的架构的发展,它将引入您还不知道的东西.想想当有人在其中添加整本书的列时会发生什么?您认为非常便宜的查询突然开始带来数兆字节的数据.

这意味着您必须指定所需的每一列.


Bee*_*eep 6

您最好的选择就是明确选择每一列.


Dre*_*rew 5

解决这个问题的一种快捷方法是SELECT a.chapter AS chapterCol,a.*FROM table a; 这意味着将有一个列名称chapterCol(假设已经没有列名为chapterCol.;))