mysql3.23で、以下のようなテーブルでリスト形式の番号を、対応する他のテーブルのデータにマッチさせて代入する方法を教えてください。
[テーブル1]
'id' | 'type'
1 | 1,2
2 | 1,3,5
3 | 2,4
[テーブル2]
'id' | 'name'
1 | red
2 | blue
3 | yerrow
4 | green
5 | pink
[このように出力したい]
'a.id' | 'b.name'
1 | red,blue
2 | red,yerrow,pink
3 | blue,green
サブクエリなど使えばできるのだと思いますが、
ずっとmysql3.23なので、今まではプログラム側でループさせて出力していましたが、
今回テンポラリーテーブルに挑戦しようと思ったので、テンポラリーテーブルを使って取得する方法があれば、ぜひやり方を教えてください。
お願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
前提がひとつ
テーブル1は、typeがカンマ区切りの文字列になっていますが
これを正規化して
id type
1 1
1 2
2 1
2 3
2 5
3 2
3 4
のようなデータの持ち方をしませんか?
そうでない場合は、かなり非効率的な処理になりSQLでは高速な処理は期待できませんが・・・
この回答への補足
ありがとうございます。
このテーブル1は、実際は
番号(プライマリ/id) | 店舗名(固有のデータ) | 所属カテゴリー(リスト形式のtype) | 住所
のような列になっていて、たとえば店舗が複数のカテゴリーに属している時にtypeはリスト形式になります。そもそもこのようなデータの持ち方が多分、だめなのでしょうか。
プログラム側でループさせるときには、一店舗ごとにループして以下のようなsqlを発行して結果(その店舗の所属カテゴリー)を得ていました。
select * from テーブル1
left join テーブル2 on find_in_set(テーブル2.id,テーブル1.type)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL 【MySQL】本当に困っています。詳しい方、ご教授よろしくお願いします。 1 2023/06/03 14:18
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- Oracle sqlで質問です。 aテーブルとbテーブルがあり、下記のsqlで取得したidとnameに一致しないレ 1 2022/04/20 20:34
- MySQL 共通点はあります。何が違うのでしょうか? 1 2023/01/27 05:22
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- Oracle SQL update方法 2 2022/06/22 14:07
- MySQL [1000地域 × 10カテゴリー = 1万件のテーブル]!グループ化? 1 2023/06/14 23:56
- Oracle sqlで質問です。 Aテーブルの情報をBテーブルに更新かけたいです。 やりたいことは、Bテーブルの受 1 2023/05/17 11:17
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マイクラPC版のコマンドで効率...
-
sqlで、600行あるテーブルを100...
-
Unionした最後にGROUP BYを追加...
-
SQL Left Join で重複を排除す...
-
DB設計について
-
SQLサーバから、項目の属性(型...
-
クエリ表示と、ADOで抽出したレ...
-
副問合せの書き方について
-
エクセルで最後の文字だけ置き...
-
ある条件の最大値+1を初番する...
-
期間の重複を調べるSQL文につい...
-
JOIN後同一名カラムから値がと...
-
SQLにて特定の文字を除いた検索...
-
VIEWの元のテーブルのindexって...
-
Access VBAでのIDの自動発番
-
”photo id” とは何ぞや?
-
select文のwhere句に配列を入れ...
-
MySQLのint型で001と表示する方...
-
WordpressのContact form 7でzi...
-
PL/SQLの変数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで最後の文字だけ置き...
-
SQL Left Join で重複を排除す...
-
副問合せの書き方について
-
SQLサーバから、項目の属性(型...
-
VIEWの元のテーブルのindexって...
-
select文のwhere句に配列を入れ...
-
selectした大量データをinsert...
-
センノシド異性体構造式
-
Unionした最後にGROUP BYを追加...
-
insertを高速化させたい
-
SQLにて特定の文字を除いた検索...
-
マイクラPC版のコマンドで効率...
-
ある条件の最大値+1を初番する...
-
inner joinをすると数がおかし...
-
sqlで、600行あるテーブルを100...
-
エクセルの関数について教えて...
-
Access パラメータクエリをcsv...
-
URL と行番号の指定
-
複数テーブルのGROUP BY の使い...
-
PL/SQLの変数について
おすすめ情報