skillup

技術ブログ

Database

SQL問題

投稿日:

今までやったSQL問題などのまとめ。定期的にやる予定です・・

自分用なのでテーブルデータとかあったりなかったりいい加減です(汗)

SQLドリル

問題1

nameとageで構成されたテーブルがあるとして、年代ごとの人数を出したいときなど(例えば未成年,20~69,70以上に分けたいときは下記のSQLで一発)

問題2

pcode(郵便番号)とdistrict_name(場所の名前)があるテーブルである郵便番号(41300003)の合致度が高いもののランキングを出す

問題3

下記テーブルがあり
cust_idごとにseqがMAXのpriceとMINのpriceの差分を求めよ
テーブル名 receipts
cust_id seq price
A 1 500
A 2 1000
A 3 700
B 5 100
B 6 50000
B 7 300
B 9 200
B 12 1000
C 10 600
C 20 100
C 45 200
C 70 50
D 3 2000

問題4
下記テーブルがあり
より古い年のデータが存在しない場合 NULL
直近の年のデータより売り上げが伸びた場合:+
直近の年のデータより売り上げが下がった場合:-
直近の年のデータと売り上げが同じ場合:=
と表記
company year sale
A 2002 52
A 2004 54
A 2005 84
B 2006 15
B 2001 95
B 2003 23
B 2008 15
C 2001 18
C 2009 32
C 2010 12

問題5
テーブルサンプル(score)
class | member_no | point
——-+———–+——-
1 | 100 | 50
1 | 101 | 55
1 | 102 | 56
2 | 100 | 60
2 | 101 | 72
2 | 102 | 73
2 | 103 | 73
classごとに通し番号を作成

-Database
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

JPAでのデータベースとの同期

このブログでも何回か書いてきたJPAですが、新規レコードをインサートさせた際IDを取得し、そのIDをもとに何らかのキーを作る、そういう処理があったので紹介させていただきます。 何回か書いてますが、JP …

no image

DBの構造について メモリとHDD

データベースについてまたまた学習中。 覚えておきたいポイントなど。 データを収めておくべき媒体では「記憶コスト(単位金額当たりの容量)」と「アクセス速度」の2つが重要なパラメータ メモリとHDDでは前 …

no image

テストのダミーデータ作成

データベースに大量のデータを作りたいときにいつもあああやhoge,aaaですとデータという感じがしないですし、抽出や集計ができません。 なるべく自然に近いデータが欲しいのですが、簡単に作れる方法があり …

no image

MySQLのメモリ設定

実務で結構サーバーをヘビーに使われるお客さんがいて、SQLが遅くなったりとしています。 なんとか対策しないといけないので、いろいろと調査をいます。 それで今回はMySQLのメモリ問題など。 MySQL …

no image

laravelのmigrationに関して

DBのカラムの保守などをする場合のmigrationに関して。 ポツポツ使っていたのですが、しっかりまとめてなかったのでここでまとめて見ようかと思います。 Contents1 カラム定義2 実際の実行 …

アーカイブ