• ベストアンサー

初級シスアドのSQL問題

[表] ID/名前/出身/所属 01/小池/東京/営業 02/有田/長野/開発 03/三島/東京/営業 04/神戸/長野/技術 05/宮本/東京/経理 06/岡島/静岡/技術 ・ ・ ・ 上の表から、下の表のように取り出すようなSQL文をお願いします。 [出身地表] 出身/人数 東京/3 長野/2 静岡/1 ・ ・ ・

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

  • ベストアンサー
回答No.1

Select 出身, count(*) Group By 出身 ですね。 count(*)は、count(ID)でもいいですし、別の列でも構いません。

noname#37843
質問者

補足

データをソートするORDER BYはどこに入れればいいのでしょうか? それらを含めてもう一度SQL文を回答いただければ嬉しいです。

その他の回答 (3)

回答No.4

うは! 本当にFrom句忘れてました(苦笑) Select 出身 From 表 count(*) Group By 出身 Order by 出身; ですかね。 なにの順でOrder by するのかが書いてないので、出身で並び替えとしました。

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.3

>ORDER BYはどこに入れればいいのでしょうか? キーワードが分かっているなら検索すればいいと思います。 「select group-by order-by」でgoogleしてヒットした一例がこちら。 http://ja.wikipedia.org/wiki/SELECT_(SQL)

  • jjon-com
  • ベストアンサー率61% (1599/2592)
回答No.2

from句をお忘れになっていますよ。>回答#1 実行結果を画面表示するのではなく,ご質問どおり「出身地表」として出力したいのなら次のようになります。 create table 出身地表(出身,人数) as select 出身, count(*) from 表 group by 出身;

関連するQ&A