teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

タグの修正

2021/02/23 07:51

投稿

ikegami_m
ikegami_m

スコア6

title CHANGED
File without changes
body CHANGED
File without changes

1

文章の追記

2021/02/23 07:51

投稿

ikegami_m
ikegami_m

スコア6

title CHANGED
File without changes
body CHANGED
@@ -3,8 +3,51 @@
3
3
  SQLに関する質問です。
4
4
  GROUP BYした結果をSUMまたはCOUNTで集計したいのですが、解決方法が見つかりません。
5
5
 
6
- ### 該当のスコ
6
+ ### 該当のタベ
7
+ こちらより引用しています。
8
+ https://launchpad.net/test-db/employees-db-1
7
9
 
10
+ ```Terminal
11
+ wget https://launchpad.net/test-db/employees-db-1/1.0.6/+download/employees_db-full-1.0.6.tar.bz2
12
+ tar jxfv employees_db-full-1.0.6.tar.bz2
13
+ cd employees_db
14
+ mysql -h"zdb" -P"3306" -u root -p"gci" < employees.sql
15
+ ```
16
+ ```
17
+ show databases;
18
+ use employees;
19
+
20
+ Database
21
+ 0 TEST1
22
+ 1 TEST2
23
+ 2 employees
24
+ 3 information_schema
25
+ 4 mysql
26
+ 5 performance_schema
27
+ 6 world
28
+ Query OK, 0 rows affected.
29
+ ```
30
+ ```
31
+
32
+ show tables;
33
+
34
+ Tables_in_employees
35
+ 0 departments
36
+ 1 dept_emp
37
+ 2 dept_manager
38
+ 3 employees
39
+ 4 salaries
40
+ 5 titles
41
+
42
+ ```
43
+
44
+
45
+ ### 試したいこと
46
+
47
+ salalry(給料)の最大が100,000より大きく、かつ最小が90,000以上のemp_noの合計数を出したいのが本来の目的です。
48
+ 下記のように、まずは条件に合う場合に1,合わない場合に0を出す列を作成しました。
49
+ この次SUMやCOUNTを使って集計しようとしたのですが、うまくいきません。
50
+
8
51
  ```SQL
9
52
  select emp_no,
10
53
  case when MAX(salary) > 100000 and MIN(salary) >= 90000 then 1 else 0 end as 'ans'
@@ -33,7 +76,5 @@
33
76
 
34
77
  ```
35
78
 
36
-
37
- ### 試したいこと
79
+ ###使用環境
38
-
39
- salalry(給料)の最大が100,000より大きく、かつ最小が90,000以上のemp_noの合計数を出したいのが本来の目的です。
80
+ mysql Ver 8.0.23 for Linux on x86_64 (MySQL Community Server - GPL)