File tree 10 files changed +248
-0
lines changed
10 files changed +248
-0
lines changed Original file line number Diff line number Diff line change
1
+ SELECT
2
+ f .PRODUCT_ID ,
3
+ f .PRODUCT_NAME ,
4
+ SUM (f .PRICE * o .AMOUNT ) TOTAL_SALES
5
+ FROM
6
+ FOOD_PRODUCT f
7
+ JOIN FOOD_ORDER o ON f .PRODUCT_ID = o .PRODUCT_ID
8
+ WHERE
9
+ o .PRODUCE_DATE LIKE ' 2022-05%'
10
+ GROUP BY
11
+ PRODUCT_ID,
12
+ PRODUCT_NAME
13
+ ORDER BY
14
+ TOTAL_SALES DESC ,
15
+ PRODUCT_ID;
Original file line number Diff line number Diff line change
1
+ WITH
2
+ HIGHEST_REVIEWER AS (
3
+ SELECT
4
+ MEMBER_ID,
5
+ COUNT (* ) NUM_REVIEWS
6
+ FROM
7
+ REST_REVIEW
8
+ GROUP BY
9
+ MEMBER_ID
10
+ ORDER BY
11
+ NUM_REVIEWS DESC
12
+ LIMIT
13
+ 1
14
+ )
15
+ SELECT
16
+ p .MEMBER_NAME ,
17
+ r .REVIEW_TEXT ,
18
+ DATE_FORMAT (r .REVIEW_DATE , ' %Y-%m-%d' ) REVIEW_DATE
19
+ FROM
20
+ MEMBER_PROFILE p
21
+ JOIN REST_REVIEW r ON p .MEMBER_ID = r .MEMBER_ID
22
+ JOIN HIGHEST_REVIEWER hr ON r .MEMBER_ID = hr .MEMBER_ID
23
+ ORDER BY
24
+ r .REVIEW_DATE ,
25
+ r .REVIEW_TEXT ;
Original file line number Diff line number Diff line change
1
+ WITH
2
+ USER_JOINED_2021 AS (
3
+ SELECT
4
+ USER_ID
5
+ FROM
6
+ USER_INFO
7
+ WHERE
8
+ JOINED LIKE ' 2021-%'
9
+ )
10
+ SELECT
11
+ YEAR (s .SALES_DATE ) YEAR,
12
+ MONTH (s .SALES_DATE ) MONTH,
13
+ COUNT (DISTINCT u .USER_ID ) PURCHASED_USERS,
14
+ ROUND(
15
+ COUNT (DISTINCT u .USER_ID ) / (
16
+ SELECT
17
+ COUNT (* )
18
+ FROM
19
+ USER_JOINED_2021
20
+ ),
21
+ 1
22
+ ) PURCHASED_RATIO
23
+ FROM
24
+ ONLINE_SALE s
25
+ JOIN USER_JOINED_2021 u ON s .USER_ID = u .USER_ID
26
+ GROUP BY
27
+ YEAR,
28
+ MONTH
29
+ ORDER BY
30
+ YEAR,
31
+ MONTH;
Original file line number Diff line number Diff line change
1
+ SELECT
2
+ F .FLAVOR
3
+ FROM
4
+ FIRST_HALF F
5
+ LEFT JOIN (
6
+ SELECT
7
+ FLAVOR,
8
+ SUM (TOTAL_ORDER) AS TOTAL_ORDER_SUM
9
+ FROM
10
+ JULY
11
+ GROUP BY
12
+ FLAVOR
13
+ ) J ON F .FLAVOR = J .FLAVOR
14
+ GROUP BY
15
+ F .FLAVOR
16
+ ORDER BY
17
+ SUM (F .TOTAL_ORDER + COALESCE(J .TOTAL_ORDER_SUM , 0 )) DESC
18
+ LIMIT
19
+ 3 ;
20
+
21
+ --
22
+ SELECT
23
+ h .FLAVOR
24
+ FROM
25
+ FIRST_HALF h
26
+ JOIN JULY j ON h .FLAVOR = j .FLAVOR
27
+ GROUP BY
28
+ h .FLAVOR
29
+ ORDER BY
30
+ SUM (h .TOTAL_ORDER + j .TOTAL_ORDER ) DESC
31
+ LIMIT
32
+ 3 ;
Original file line number Diff line number Diff line change
1
+ SELECT
2
+ b .BOOK_ID ,
3
+ a .AUTHOR_NAME ,
4
+ DATE_FORMAT (b .PUBLISHED_DATE , ' %Y-%m-%d' ) PUBLISHED_DATE
5
+ FROM
6
+ BOOK b
7
+ JOIN AUTHOR a ON b .AUTHOR_ID = a .AUTHOR_ID
8
+ WHERE
9
+ b .CATEGORY = ' 경제'
10
+ ORDER BY
11
+ PUBLISHED_DATE;
Original file line number Diff line number Diff line change
1
+ WITH
2
+ SEDAN_OR_SUV AS (
3
+ SELECT
4
+ CAR_ID,
5
+ CAR_TYPE,
6
+ DAILY_FEE
7
+ FROM
8
+ CAR_RENTAL_COMPANY_CAR
9
+ WHERE
10
+ CAR_TYPE IN (' 세단' , ' SUV' )
11
+ ),
12
+ AVAILABLE_CARS AS (
13
+ SELECT
14
+ c .CAR_ID
15
+ FROM
16
+ SEDAN_OR_SUV c
17
+ WHERE
18
+ NOT EXISTS (
19
+ SELECT
20
+ 1
21
+ FROM
22
+ CAR_RENTAL_COMPANY_RENTAL_HISTORY h
23
+ WHERE
24
+ h .CAR_ID = c .CAR_ID
25
+ AND NOT (
26
+ h .END_DATE < ' 2022-11-01'
27
+ OR h .START_DATE > ' 2022-11-30'
28
+ )
29
+ )
30
+ ),
31
+ DISCOUNTED_FEES AS (
32
+ SELECT
33
+ c .CAR_ID ,
34
+ c .CAR_TYPE ,
35
+ ROUND(30 * c .DAILY_FEE * (1 - p .DISCOUNT_RATE / 100 )) FEE
36
+ FROM
37
+ SEDAN_OR_SUV c
38
+ JOIN AVAILABLE_CARS a ON c .CAR_ID = a .CAR_ID
39
+ LEFT JOIN CAR_RENTAL_COMPANY_DISCOUNT_PLAN p ON c .CAR_TYPE = p .CAR_TYPE
40
+ AND p .DURATION_TYPE = ' 30일 이상'
41
+ )
42
+ SELECT
43
+ CAR_ID,
44
+ CAR_TYPE,
45
+ FEE
46
+ FROM
47
+ DISCOUNTED_FEES
48
+ WHERE
49
+ FEE >= 500000
50
+ AND FEE < 2000000
51
+ ORDER BY
52
+ FEE DESC ,
53
+ CAR_TYPE,
54
+ CAR_ID DESC ;
Original file line number Diff line number Diff line change
1
+ SELECT
2
+ o .ANIMAL_ID ,
3
+ o .NAME
4
+ FROM
5
+ ANIMAL_OUTS o
6
+ LEFT JOIN ANIMAL_INS i ON o .ANIMAL_ID = i .ANIMAL_ID
7
+ WHERE
8
+ i .ANIMAL_ID IS NULL
9
+ --
10
+ SELECT
11
+ o .ANIMAL_ID ,
12
+ o .NAME
13
+ FROM
14
+ ANIMAL_OUTS o
15
+ WHERE
16
+ NOT EXISTS (
17
+ SELECT
18
+ 1
19
+ FROM
20
+ ANIMAL_INS i
21
+ WHERE
22
+ o .ANIMAL_ID = i .ANIMAL_ID
23
+ )
24
+ ORDER BY
25
+ o .ANIMAL_ID ;
Original file line number Diff line number Diff line change
1
+ SELECT
2
+ o .ANIMAL_ID ,
3
+ o .NAME
4
+ FROM
5
+ ANIMAL_OUTS o
6
+ JOIN ANIMAL_INS i ON o .ANIMAL_ID = i .ANIMAL_ID
7
+ WHERE
8
+ o .DATETIME < i .DATETIME
9
+ ORDER BY
10
+ i .DATETIME ;
Original file line number Diff line number Diff line change
1
+ SELECT
2
+ i .NAME ,
3
+ i .DATETIME
4
+ FROM
5
+ ANIMAL_INS i
6
+ LEFT JOIN ANIMAL_OUTS o ON i .ANIMAL_ID = o .ANIMAL_ID
7
+ WHERE
8
+ o .ANIMAL_ID IS NULL
9
+ ORDER BY
10
+ i .DATETIME
11
+ LIMIT
12
+ 3 ;
13
+
14
+ --
15
+ SELECT
16
+ i .NAME ,
17
+ i .DATETIME
18
+ FROM
19
+ ANIMAL_INS i
20
+ WHERE
21
+ NOT EXISTS (
22
+ SELECT
23
+ 1
24
+ FROM
25
+ ANIMAL_OUTS o
26
+ WHERE
27
+ o .ANIMAL_ID = i .ANIMAL_ID
28
+ )
29
+ ORDER BY
30
+ i .DATETIME
31
+ LIMIT
32
+ 3 ;
Original file line number Diff line number Diff line change
1
+ SELECT
2
+ o .ANIMAL_ID ,
3
+ o .ANIMAL_TYPE ,
4
+ o .NAME
5
+ FROM
6
+ ANIMAL_OUTS o
7
+ JOIN ANIMAL_INS i ON o .ANIMAL_ID = i .ANIMAL_ID
8
+ WHERE
9
+ i .SEX_UPON_INTAKE LIKE ' Intact%'
10
+ AND (
11
+ o .SEX_UPON_OUTCOME LIKE ' Spayed%'
12
+ OR o .SEX_UPON_OUTCOME LIKE ' Neutered%'
13
+ )
You can’t perform that action at this time.
0 commit comments