[前][次][番号順一覧][スレッド一覧]

mysql:8036

From: <ytb73@xxxxxxxxxx>
Date: Wed, 16 Jul 2003 13:08:31 +0900
Subject: [mysql 08036] カラムの和でソート

矢田部@山梨です。
お世話になります。
MySQL3.23で、複数カラムの和をいくつか求め、その総和でソートをしたいのです。
table_a に a,b,c,d という整数型のカラムがあるとして、

[caseA]
select
a + b as AB,
c + d as CD,
a + b + c + d as ABCD
from table_a
order by ABCD

とすればうまくいくのですが、これだとあまりに不細工なのでを

[caseB]
select
a + b as AB,
c + d as CD,
AB + CD as ABCD
from table_a
order by ABCD

とすると
ERROR 1054: Unknown column 'AB' in 'field list'
が、

[caseC]
select
a + b as AB,
c + d as CD
from table_a
order by AB + CD

とすると
ERROR 1054: Unknown column 'AB' in 'order clause'
が出てしまいます。

過去のMLを見たところ、[caseB]は select clause で定義したエイリアスを
 orderby clause で使おうとしていることが、
[caseC]は order by の中に式を書こうとしているのがまずいとわかりました。

しかし、[caseA]以外の簡略化した手法はないでしょうか。
ご存知の方おられましたらご教授いただけるとうれしいです。

~~~~~
矢田部


[前][次][番号順一覧][スレッド一覧]

->    8036 2003-07-16 13:08 [<ytb73@xxxxxxxxxx>  ] カラムの和でソート                      
      8037 2003-07-16 13:15 ┣[<ytb73@xxxxxxxxxx>  ]                                       
      8040 2003-07-16 13:33 ┣[班石悦夫 <madara@xxx]                                       
      8042 2003-07-16 13:43 ┃┗[<ytb73@xxxxxxxxxx>  ]                                     
      8083 2003-07-28 17:04 ┗[Ohyama <ohyamah@xxxx]