Firebird 2.5で、union演算子の結果に対してorder byで並び替えるために、次のようなSQLを書いたらエラーになった。
select C1, C2, C3 from T1
union all
select C1, C2, C3 from T2
order by C1
解決策は、次のように書く。
select C1,C2,C3
from (
select C1, C2, C3 from T1
union all
select C1, C2, C3 from T2
)
order by C1
2.5は環境的に利用していないので間違っていたら申し訳ありませんが、
2.0までは、以下の様にしていましたが、↓の方法でも出来ませんか?
select C1, C2, C3 from T1
union all
select C1, C2, C3 from T2
order by 1
↑orderしたいフィールド番号を指定
長江様
ご指摘の通り、フィールド番号を指定すればできますね。
教えていただきありがとうございます。