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のRANK及びDENSE_RANK関数を用いてランキングを実装する方法
ランキング機能を実装する際、上位〇位までのデータをMySQLから持ってきて順位付 ...
-
-
MySQLに保存したデータをJSON形式で取得する方法
MySQLに保存したデータをJSON形式で利用したいということがたまにある(Ja ...
-
-
MySQLで「server has gone~」というエラーの対応方法
MySQLで「MySQL server has gone away」というエラー ...
-
-
MySQLで文字列を置換する方法
MySQLで文字列の置換を行いたかった。以下に方法をメモ。 置換方 ...
-
-
MySQLでdatetime型にもインデックスを使用して高速化を図る方法
ログ関連のデータを格納するテーブルがあり、集計を行う際に非常に時間がかかった。レ ...