# 2021年1月SQL練習課題 | LittleVoice-g-string

LittleVoice-g-string

苦しむために生きないであなた自身を愛してくれ

2021年1月SQL練習課題


1.2021年1月12日

以下のデータに対して、NAME列内種類ごとの和と各種類の総数の比率が0.6より大きいIDとNAMEを抽出せよ。

ID NAME NUM
1 A 1
2 A 2
3 A 6
4 A 4
5 A 3
6 B 2
7 B 8
8 B 2

2.2021年1月13日

テーブルT0113は以下の通りです。

日付 コード 金額 金額相違値
2020-07-01 A 2.00 .00
2020-07-06 A 4.00 2.00
2020-07-12 A 3.00 -1.00
2020-07-13 A 4.00 1.00
2020-07-13 B 2.00 .00
2020-07-19 B 4.00 2.00

同じコードでも日によって、金額違うので、その連続増長の日数と連続減少の日数を統計し、以下の結果を出してみよう

日付 コード 金額 金額相違値 増長方向 連続増長日数|
2020-07-01 A 2.00 .00 1
2020-07-06 A 4.00 2.00 2
2020-07-12 A 3.00 -1.00 1
2020-07-13 A 4.00 1.00 1
2020-07-13 B 2.00 .00 1
2020-07-19 B 4.00 2.00 2

3.2021年1月16日

T0116というテーブルがあって、商品ごとに最新日の日平均単価を求めよう

商品 日付 単価 個数
デスク 2016-01-01 5000 1
イス 2016-01-01 3000 4
デスク 2016-01-02 5000 2
デスク 2016-01-01 5000 3
イス 2016-01-02 3000 2
デスク 2016-01-02 4800 1

4.2021年1月17日

T0117というテーブルがあって、希望の形(右)に整おう

T0117集計後
X L
1 A
2 A
3 A
4 A
5 B
6 B
7 B
8 A
9 A
L R
A 1-4
A 8-9
B 5-7

5.2021年1月21日

T0121というテーブルがあって、Amountは一人ひとりが同じ月に違うステータスしたの金額総和である。その総和を該当月の平均金額に換算しよう

ID NAME MON STATE AMOUNT
1 Aさん 201901 A 9000
2 Aさん 201901 B 9000
3 Aさん 201901 E 9000
4 Bさん 201902 A 1800
5 Bさん 201902 C 1800
6 Cさん 201902 C 30000
7 Cさん 201902 F 30000

希望:

ID NAME MON STATE AMOUNT
1 Aさん 201901 A 3000
2 Aさん 201901 B 3000
3 Aさん 201901 E 3000
4 Bさん 201902 A 900
5 Bさん 201902 C 900
6 Cさん 201902 C 15000
7 Cさん 201902 F 15000
8 Aさん 201902 D 2000

6.2021年1月25日

T0125というテーブルがあります。

TransType OprSeq OpCode TransTime
開始 10 NF21 2019-11-30 14:06
シフト 10 NF21 2019-11-30 14:09
開始 10 NF21 2019-11-30 14:10
結束 10 NF21 2019-11-30 14:13
開始 20 NF22 2019-11-30 14:15
結束 20 NF22 2019-11-30 14:16
開始 30 NF24 2019-11-30 14:17
結束 30 NF24 2019-11-30 14:20

以下のように整理しましょう

TransType OprSeq OpCode StartTime EndTime
開始-シフト 10 NF21 2019-11-30 14:06 2019-11-30 14:09
開始ー結束 10 NF21 2019-11-30 14:10 2019-11-30 14:13
開始ー結束 20 NF22 2019-11-30 14:15 2019-11-30 14:16
開始ー結束 30 NF24 2019-11-30 14:17 2019-11-30 14:20

7.2021年1月26日

T0126Aというテーブルがあります。薬AとBの配り状況を表しています。T0126Bは薬AとBの購買記録です。

T0126AT0126B
id spmc 分配量
1 A 80.0000
2 B 100.0000
id spmc 購入量
1 A 20.0000
2 A 50.0000
3 A 40.0000
4 A 30.0000
5 B 120.0000
6 B 80.0000
7 B 100.0000
上記2つのテーブルの情報をまとめて、下記のテーブルを出しましょう。
spmc 購入量 今回使用量 在庫量
A 20.0000 20.0000 .0000
A 50.0000 50.0000 .0000
A 40.0000 10.0000 30.0000
A 30.0000 .0000 30.0000
B 120.0000 100.0000 20.0000
B 80.0000 .0000 80.0000
B 100.0000 .0000 100.0000

Welcome to my other publishing channels