MySQLでカラム数の異なるテーブルを結合する(UNION)
2024/04/18
MySQLでカラム数の異なるテーブル同士をUNIONで結合させたかった。ただ、何も考えずにSQL文を打ち込むとエラーになった。SELECT時に取り出すカラムを揃えてあげる必要があるみたい。以下の通り。
リファレンス
https://dev.mysql.com/doc/refman/8.0/ja/union.html
ソースコード
(
SELECT id, ymd, name
FROM table_a
WHERE name != ''
)
UNION ALL
(
SELECT id, ymd, name
FROM table_b
WHERE name != ''
)
ORDER BY date DESC
LIMIT 0,5
関連記事
-
-
MySQLで「Incorrect integer value: '' for column」エラーの対応方法
MySQLで「Incorrect integer value: '' for c ...
-
-
MySQLでtext型カラムに入っている数値をint型としてソートする
MySQLでtext型として指定されているカラムがあり、その中には文字列であった ...
-
-
mysqlで正規化できない時はシリアライズ使う
アンケートか何かに機能追加している際、配列を カンマ区切りで結合して文字列でDB ...
-
-
MySQLでデータがあれば上書き、無ければ挿入する
既存のソースを編集時に「REPLACE INTO~~」 という見たことの無いSQ ...
-
-
MySQLで「doesn't have a default value」エラーの対処
MySQLでINSERT時に「Field 'カラム名' doesn't have ...