OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

group by句について

  • 困ってます
  • 質問No.191248
  • 閲覧数84
  • ありがとう数2
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 66% (4/6)

すいません。教えてください。
emp表からJobのデータが何種類あるか出力したいとき、

・ select count(distinct job) from emp;

はいいのに、

・ select count(job) from emp group by job;

がエラーになる理由を知っている方、教えてください。
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.1
レベル10

ベストアンサー率 61% (75/121)

group by句はグループ化したい列に適用します。
ご質問の内容でSQL文を作成すると
select job,count(*) job_count from emp group by job;
となります。

結果は
job     job_count
PRESIDENT      1
MANAGER       10
CLEAK        20
の様になります(数字は適当です)。
お礼コメント
hiromaru

お礼率 66% (4/6)

なるほど、group by句で指定した内容と、select句で選択した
内容が同じでないからエラーになるんですね。
よくわかりました。ありがとうございました。
投稿日時 - 2001-12-27 11:36:11
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.2
レベル7

ベストアンサー率 50% (9/18)

group by句は出力したい項目をグループ化するところです 出力されない項目をグループ化することは出来ませんので、エラーがでます >select count(job) from emp group by job; ↓ select count(job) from emp group by count(job); とすれば、正常に出力されるでしょう >emp表からJobの ...続きを読む
group by句は出力したい項目をグループ化するところです
出力されない項目をグループ化することは出来ませんので、エラーがでます

>select count(job) from emp group by job;

select count(job) from emp group by count(job);
とすれば、正常に出力されるでしょう

>emp表からJobのデータが何種類あるか出力したいとき、
だったら、下記のほうが宜しいかと...
select job, count(job) from emp group by job, count(job);


  • 回答No.3
レベル7

ベストアンサー率 50% (9/18)

No.2のteppyです すいません間違えました >select job, count(job) from emp group by job, count(job); ↓ select job, count(job) from emp group by job; No.1のsghさんのSQL文が正しいです ...続きを読む
No.2のteppyです
すいません間違えました
>select job, count(job) from emp group by job, count(job);

select job, count(job) from emp group by job;

No.1のsghさんのSQL文が正しいです
お礼コメント
hiromaru

お礼率 66% (4/6)

よくわかりました。
ありがとうございました。
投稿日時 - 2001-12-27 11:38:34
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ