IBM DB2选择命名列,然后选择*

时间:2014-08-05 15:32:25

标签: sql db2

我似乎无法弄清楚如何在IBM DB2 select语句中执行以下操作:

SELECT column1, *
FROM [some table]

我收到以下错误:

SELECT ACCT_NUM, * FROM GEG1.RENL_RATING_STRUC
SQL0104N  An unexpected token "*" was found following "".  Expected tokens may include:  "+ - ROW NEXTVAL PREVVAL NEXT PREVIOUS ( <INTEGER> <DECIMAL>".  SQLSTATE=42601

我搜索了一个语法文档,但我找不到。任何人都可以帮忙吗?

1 个答案:

答案 0 :(得分:2)

如果您为表提供别名,则可以在星号前加上别名前缀,以执行您想要的操作:

SELECT A.id, A.*
FROM your_table A

您必须解释this page中的select-clause定义:

           .-ALL------.   
>>-SELECT--+----------+----------------------------------------->
           '-DISTINCT-'   

>--+-*-----------------------------------------------+---------><
   | .-,-------------------------------------------. |   
   | V                                             | |   
   '---+-expression--+-------------------------+-+-+-'   
       |             | .-AS-.                  | |       
       |             '-+----+--new-column-name-' |       
       '-exposed-name.*--------------------------'       

所以,这基本上是&#34;你可以SELECT * 你可以选择多个表达式(一列)或exposed-name.*,用逗号分隔&#34;