- ベストアンサー
SELECT文のソートについて
SQLのSELECT文で抽出した列Aの値が、例えば1~12であるとして、それを4~12、1~3という具合にソートしたいのですがやり方がわかりません。 ORDER BY句を使えばいいのか、それとも全く別の方法を使うのか教えてください。 よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
アクセスで、後々の応用を考えたら order by iif(A>=4,0,1) ,A がわかりやすいかも。 Select iif(A>=4,0,1) as Skey ,A from table をすると意味がわかるんじゃないかと。
その他の回答 (3)
- kztk
- ベストアンサー率53% (59/110)
回答No.3
select A from [テーブル名] order by (A+8) mod 12
質問者
お礼
ありがとうございます。 勉強になりました。
- yambejp
- ベストアンサー率51% (3827/7415)
回答No.2
select * from table order by a<4 ASC,a ASC
質問者
補足
教えていただいた上記クエリを実行したのですが、1~12の順に表示されてしまいました。
- notnot
- ベストアンサー率47% (4900/10358)
回答No.1
select * from(atable) order by mod(a+8,12);
質問者
補足
select * from [テーブル名] order by mod(列A+8,12); としたのですが、演算子がありませんとエラーが出てしまいました。 ちなみに、DBはaccessです。
お礼
応用までは考えていなかったので、助かりました。 ありがとうございます。