- ベストアンサー
Access 生年月日を月日順かつ年順で並べる方法
Access2013 フィールド(短いテキスト)に生年月日を「昭和00年00月00日」と入力してあります。 これを、月日順で且つ年順に並べるクエリを教えて下さい。宜しくお願いします。 例 昭和27年1月5日 昭和30年1月5日 昭和59年1月5日 昭和25年2月2日 昭和40年2月2日 昭和60年2月2日
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (6)
- chayamati
- ベストアンサー率41% (260/624)
クエリをデザインビューで開いて生年月日を月、日、年を分解し これに並び替えに昇順、降順を設定します。 月、日、年は左が上位になります。 誕生日のデータ型が「日付/時刻型」ならば式は 月: month([誕生日]) 日: Day([誕生日]) 年: Year([誕生日]) とします 蛇足ですが、これらの項目の表示のチェックを外しても並び替えは有効です
- naoto0216
- ベストアンサー率46% (183/391)
SELECT 和暦テーブル.生年月日, Format([生年月日],"yyyy/mm/dd") AS 西暦 FROM 和暦テーブル ORDER BY Format([生年月日],"yyyy/mm/dd"); 西暦を表示させないなら、こっち。 SELECT 和暦テーブル.生年月日 FROM 和暦テーブル ORDER BY Format([生年月日],"yyyy/mm/dd");
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
日付フィールドは連番なんで、大小の比較は出来るのですが、テキストフィールドとなると・・・・ もう一個、日付型のフィールドを用意して、イコールで代入、並べ替えかな。 で、和暦でしょ? 和暦の文字列を日付型に出来たかどうか、記憶にないので探しますが。 いや、今考えてて、明治の前ってなんだろ、平成の次は? 仮に新しい元号が・・・いや、あと数年は平成だろーけど、変わったらどうすんだろ。 いえ、ここで「西暦1821年」をエラーにしないと。「平成45年」も判断しないと。 今日、今より未来の日付を入力時にできなくすると・・・・ 何れにせよ、「日付型」を用意し、そこに値を入れてれば、マイクロソフトの責任になるよね。 商事 って入力しないよう、リスト型で元号を・・・となると、短いテキストに代入できないし。
- mshr1962
- ベストアンサー率39% (7417/18945)
並べ替え用のフィールドを用意するしかありません。 月日と年を別フィールドにするか?月日/年のテキストフィールドを作るかですね。 月日:Format(DateValue([フィールド1],"mm月dd日") 年:Format(DateValue([フィールド1],"yyyy") 月日年:Format(DateValue([フィールド1],"mm月dd日")&"/"Format(DateValue([フィールド1],"yyyy") ※年を西暦にしています。和歴年号順だと大正、平成が混ざると順番が変わるので。。。
- aokii
- ベストアンサー率23% (5210/22062)
ツールバーの[昇順で並べ替え]ボタンを使って並べ替え
補足
うまく出来ません。 新しくフィールド(短いテキスト)を作って、書式に下記を(1)入力し、Enterを押すと(2)になってしまいます。入力するところが違っているのか、教えて下さい。 (1) 月日年:Format(DateValue([生年月日],"mm月dd日")&"/"Format(DateValue([生年月日],"yyyy") (2) "月日年":\F\rm"at("d"at"e"Valu"e"([生年月日],mm月dd日)&/F"\rm"at("d"at"e"Valu"e"([生年月日],yyyy)"