勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

MySQLでカラム数の異なるテーブルを結合する(UNION)

   2024/04/18  MySQL

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

  関連記事

InnoDBのオートインクリメントで抜け番が発生する原因について

MySQLのInnoDBでIDというカラムにオートインクリメント設定していたが、 ...

MySQLで特定のテーブルにパーティショニング設定し高速化を図る方法

以前に他社が設計されたログ系のテーブルを拝見した際にパーティショニング設定が行わ ...

MySQLのtinyintのカラムにbool値を入れた場合

他所のシステムに携わることがあり中身を色々見ているとMySQLでtinyint( ...

mysqlで正規化できない時はシリアライズ使う

アンケートか何かに機能追加している際、配列を カンマ区切りで結合して文字列でDB ...

MySQLで1対多というテーブル構造でデータ結合と条件検索する方法

MySQLで飲食店舗テーブルと休業日テーブルがあり、1店舗に対して複数行の休業日 ...