• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:UNIONで繋いだ結果セットの並べ替え)

UNIONで繋いだ結果セットの並べ替え

このQ&Aのポイント
  • 二つのテーブルをunionで繋いで、IDの昇順に並べ替えたいのですが、整数のID列は文字列にコンバートしました。
  • しかし、これでは整数のIDが正しく並べ替えられません。どのようにすれば望む結果を得ることができるでしょうか?
  • 正しい順序で並べ替えるための解決策を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.1

convert(char(8),id) のかわりに right(" "+convert(varchar(8),id),8) にしてみては。(回答の表示では連続する空白が詰まって表示されてしまいますが、実際には、上記の【"】の間には空白が7個入ります。)

noname#14004
質問者

お礼

お礼の投稿を忘れていました。 (この掲示板の使い方がまだよくわからない。) xcrOSgS2wYさん、助かりました。 ありがとうございました。

noname#14004
質問者

補足

xcrOSgS2wYさん、さっそくのレスありがとうございます。 教えていただいた通りにやってみたらできました! select id from hoge union select right('    ' + convert(varchar(8), id), 8) hogehoge order by id ※この投稿を参考にされる方のために 上記SQL文の right(' '・・・の、''の間には、実際には半角スペースが7つ入ります。 (ブラウザが半角スペースを空白をひとつにしてしまうので全角を入れました。)