- 締切済み
テーブルのソート
postgresqlでソートする処理があります。 データとして、例えば、項目名をgrp,data とするとして grp,data 0,あああ 1,いいい 3,ううう 0,えええ 5,おおお 0,かかか 0,ききき 2,くくく というようなデータを 1,いいい 3,ううう 5,おおお 2,くくく 0,あああ 0,えええ 0,かかか 0,ききき というように取り出したいのです。 言葉にすると grpを0と0以外で抽出し、その中でdataソート(0以外の中からが優先) みたいな感じでしょうか。 二つのsqlを使えばできるでしょうが、なんとかひとつのsqlでできないでしょうか? よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
お礼
askaaska さん、ありがとうございます。 最初にそのようにしたのですが "union"またはその近辺で構文エラー になったんです。 で、order by をはずしたらエラーは消えたのですが それではまずいので 最後にorder byを追加したらエラーがでなかったもんで。^^; いろいろありがとうございました。
補足
今、CASE WHEN を使って 自己解決しました! ・・・CASE WHEN grp>0 THEN 0 ELSE 1, data 昨日から悩んでいたので、ホッとしてます。 アドバイス、有難うございました。