skillup

技術ブログ

Database

NOT EXISTSの利用2

投稿日:

今回もNOT EXISTSの利用です。

前回の問題にプラスアルファし、列が一緒でないと連続でも意味ない仕様にします。

例えば下記のようなテーブルがあるとします。

seat | row_id | status
——+——–+——–
1 | A | 占
2 | A | 占
3 | A | 空
4 | A | 空
5 | A | 空
6 | B | 占
7 | B | 占
8 | B | 空
9 | B | 空
10 | B | 空
11 | C | 空
12 | C | 空
13 | C | 空
14 | C | 占
15 | C | 空

seatとstatusは一緒なのですが、row_idが一緒でないと意味がないとします。

例えば10~11などは続けて座れません。

これは始点と終点の列名がおなじであることをいれてあげればOKです。

一応模範解答のものをのせておきます。

これはNOT EXISTSの中に条件を入れています。NOT EXISTSの章は論理構造を扱っているので、筆写の方はその手法を理解してほしかったんだろうと思います。論理関係がちょっとむずいですね。

-Database
-

執筆者:


comment

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

関連記事

no image

MySQL小ネタ テーブル単位のリストア・SQLの小ネタ(バックスラッシュの検索)

MySQLのちょい小ネタ。 Contents1 テーブル単位でバックアップ&リストア2 バックスラッシュの入ったSQLについて テーブル単位でバックアップ&リストア 1 通常のdump(データベース単 …

no image

集合としてのSQL

今まで何度かSQLが集合ということを扱ってきました。 今回はそれがよくわかる例を。 実務ではあまりないと思うのですが、集合をイメージしやすい例題として、2つのテーブルが全く同じケースを考えます。 下記 …

no image

Postgres リモートホストからの接続他

今まで使ってきたデータベースはMySQLがほとんどなのですが、最近少し、Postgresを触っています。 今回はパスワードの設定とリモートからの接続など。 Contents1 postgresへのログ …

no image

第二、第三の正規化&ER図&Check制約

前回第一正規化を話したので、第二、第三に進んでいきます。 Contents1 第二正規化とは?2 第三正規化とは?3 正規化のメリット4 ER図5 本日のSQLネタ Check制約 第二正規化とは? …

no image

JSON型の検索

複数のタグなどを入れる場合、JSON型のカラムやデータなどを入れることがあるかと思いますが、ここから検索できるということが昨日わかりましたので、メモしておきます。 SQLServerで発見しましたが、 …