人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Accessで、20歳、24歳、32歳、47歳、48歳、50歳、56歳などといろんな年齢層があるデータがあるとします。
これを年齢層別に何人いるかを表示させるクエリを作成したいのですが
どうしたらいいでしょうか?


20歳代 | 2人
30歳代 | 5人
40歳代 | 1人
50歳代 | 8人

というふうに表示させたいのです。

●質問者: sapuri14
●カテゴリ:ビジネス・経営 コンピュータ
✍キーワード:24 32歳 access いるか クエリ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● cx20
●20ポイント

http://makotowatana.ld.infoseek.co.jp/access/acconExamplesUnionQ...

Accessでお仕事 ユニオンUNION クエリの例

もっとスマートな方法があるかも知れません。

以下は、とりあえず思いついた方法です。

(それぞれの年代ごとの集計結果を UNION で連結する方法です。)


SELECT ”20歳代” AS age, COUNT(*) & ”人” AS cnt FROM tb_userlist WHERE age BETWEEN 20 AND 29

UNION ALL

SELECT ”30歳代” AS age, COUNT(*) & ”人” AS cnt FROM tb_userlist WHERE age BETWEEN 30 AND 39

UNION ALL

SELECT ”40歳代” AS age, COUNT(*) & ”人” AS cnt FROM tb_userlist WHERE age BETWEEN 40 AND 49

UNION ALL

SELECT ”50歳代” AS age, COUNT(*) & ”人” AS cnt FROM tb_userlist WHERE age BETWEEN 50 AND 59;


2 ● vegah
●20ポイント

http://www.hatena.ne.jp/1122726641#

人力検索はてな - Accessで、20歳、24歳、32歳、47歳、48歳、50歳、56歳などといろんな年齢層があるデータがあるとします。 これを年齢層別に何人いるかを表示させるクエリを作成したいので..

?クエリの一列目

年齢層: Format(Fix([年齢のフィールド]/10)*10,”0”) & ”歳代”

?クエリーの2列目

どこか別のフィールド


?集計を選択して、一列目をグループ化、二列目をカウントにする。


この方法で、年代別の集計がされます。

二列目の人数に「人」をつける必要があるならば、もうひとつクエリーを作って、

Format([二列目],”0”)&”人”とすると良いと思います。


3 ● Hibi
●20ポイント

http://www.hatena.ne.jp/111

人力検索はてな

URLはダミーです。


実際にテーブル内に入っているデータは「20歳」などと文字列なのでしょうか?

この場合だと下記のクエリ(SQL)でできます。(確認済み)


SELECT

CStr(Int(CInt(Val([年齢]))/10)*10) & ’歳代’ AS 年代,

Count(テーブル1.年齢) AS 年代別人数

FROM テーブル1

GROUP BY CStr(Int(CInt(Val([年齢]))/10)*10) & ’歳代’

ORDER BY CStr(Int(CInt(Val([年齢]))/10)*10) & ’歳代’;

◎質問者からの返答

皆さんいろいろな方法をありがとうございました。

自力で出来ました( ̄  ̄;)

クエリ

フィールド

年齢層: Int([年齢]/10) | 人数: [年齢層]

集計

グループ化 | カウント

SQLだと

SELECT Int([年齢]/10) AS 年齢層, Count([年齢

層]) AS 人数

FROM アンケート全データ

GROUP BY Int([年齢]/10);

というふうにして上手くいきました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ