No.2ベストアンサー
- 回答日時:
こんにちは、angelinaane様
以下のSQLではいかがでしょうか?
SELECT tablea.ID,tablea.name
FROM tablea
LEFT JOIN tableb ON tablea.id = tableb.id
WHERE tablea.name LIKE '%あああ%'
AND tableb.kubun = 1 and tableb.naiyo >= 0
UNION
SELECT tablea.ID,tablea.name
FROM tablea
LEFT JOIN tableb ON tablea.id = tableb.id
WHERE tablea.name LIKE '%あああ%'
AND tableb.kubun = 2 and tableb.naiyo >= 5
UNION
SELECT tablea.ID,tablea.name
FROM tablea
LEFT JOIN tableb ON tablea.id = tableb.id
WHERE tablea.name LIKE '%あああ%'
AND tableb.kubun = 3 and tableb.naiyo <= 8
単純にUNIONで結合しただけです。
一応、条件通りだと思うのですが、もっと複雑な気がしています。
もしかして、
>区分1のとき内容が0以上 かつ
>区分2のとき内容が5以上 かつ
>区分3のとき内容が8以下
この条件は可変とか・・・
だとすると、プログラム中でSQLを組むだけなんですけどね。
oops1967様
朝から回答ありがとうございます。
結局のところ、テーブルBを3つ外部結合しましたら
なんとか動いてくれました。
教えていただいたUNION結合でもできるのか
まだ試していませんが、
UNIONって「かつ」の条件なんでしょうか。
「または」というイメージなんですけれど。
重複データのみがほしいです・・。
とりあえず、回答いただけてヒントになりました。
ありがとうございました。
No.1
- 回答日時:
こんにちは、angelinaane様
WHERE条件が解らないので、取り敢えず or でやってみました。
一応、チェックはしたのですが、これで良いでしょうか?
SELECT tablea.ID,tablea.name
FROM tablea
LEFT JOIN tableb ON tablea.id = tableb.id
WHERE tablea.name = 'bbb'
OR tableb.naiyo = 'bbb'
ORDER BY ID
なんか、もっと複雑なお話しのような気がします。
この回答への補足
oops1967様
回答ありがとうございます。
もうすこし正確に言いますと、
名前が「%あああ%」かつ
区分1のとき内容が0以上 かつ
区分2のとき内容が5以上 かつ
区分3のとき内容が8以下
というような条件です。
で、結果はテーブルAのIDでGROUP化したいのですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle sqlで質問です。 Aテーブルの情報をBテーブルに更新かけたいです。 やりたいことは、Bテーブルの受 1 2023/05/17 11:17
- Oracle SQL update方法 2 2022/06/22 14:07
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- Access(アクセス) アクセス 削除するレコードを含んだテーブルを指定してくださいのエラー対処方法 1 2022/11/24 15:01
- SQL Server ACCESSで3ファイルを結合して、表を作成するやり方を教えて下さい。 17 2022/08/15 20:34
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL 【MySQL】本当に困っています。詳しい方、ご教授よろしくお願いします。 1 2023/06/03 14:18
- Oracle sqlのupdate文で質問です。 テーブルBの番号をキーにテーブルAの身長をテーブルBの身長に更新 2 2022/11/02 15:15
- SQL Server ACCESSで複数テーブルを結合して、リストを作る方法を教えてください。 2 2022/08/12 19:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テーブルからのselectにおいて...
-
postgreSQLのint型は桁数指定が...
-
pl/pgsqlで変数の扱い
-
賢いSQL文がわからない
-
クエリアナライザのsp_helpコマ...
-
UNIQUEをつけたときのINDEXテー...
-
SQL文の実行に苦労しています。
-
2つの異なるテーブルを和結合し...
-
INDEXの無効化
-
異なるスキーマからデータを抽...
-
データを削除しても表領域の使...
-
ORA-00959: 表領域'****'は...
-
datapumpの実行方法について
-
SQLでスキーマ名(所有者名)の...
-
INSERT時に発番を行いたい
-
[性能改善]AccessのDBに大量の...
-
oracle sqlで先頭の1件を取得
-
count(1)とcount(*)の違い
-
Access レコードを追加できませ...
-
特定のスキーマのテーブルを一...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
postgreSQLのint型は桁数指定が...
-
テーブルからのselectにおいて...
-
PostgressからMySQL(MariaDB)...
-
UNIQUEをつけたときのINDEXテー...
-
クエリアナライザのsp_helpコマ...
-
SQL SELECT文 別テーブルのレコ...
-
SQL文作成のお願い
-
3つのテーブルの処理について
-
全テーブルのデータの行数
-
SQLで検索結果の記事を表示したい
-
近い時間によるテーブル結合
-
PostgresSQL8.4でツリー上に取...
-
SELECT結果から重複行を除く方法
-
Perl DBI でSELECT ilikeの結果...
-
2つの異なるテーブルを和結合し...
-
賢いSQL文がわからない
-
チェックボックスから、データ...
-
Viewにインデックスは張れ...
-
データを削除しても表領域の使...
-
異なるスキーマからデータを抽...
おすすめ情報