勉強したことのメモ

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

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

   2024/04/18  MySQL / MariaDB

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 / MariaDB

  関連記事

MySQLで指定したカラムの中央値を抽出する方法
MySQLで指定したカラムの中央値を抽出する方法

MySQLで指定したカラムの中央値を抽出したいというケースがあった。MariaD ...

MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方
MySQLでデータベース単位とテーブル単位のデータサイズ(容量)の調べ方

VPSの各種ファイルを整理している際に「MySQLも不要なデータを削除すればいい ...

MySQLで日時や日付で範囲検索する際に動作速度を向上させる方法
MySQLで日時や日付で範囲検索する際に動作速度を向上させる方法

MySQLでログ系等の大量にデータが格納されているテーブルから日時や日付で範囲検 ...

PHPからMySQLに接続する際「getaddrinfo for xxxxxx failed」エラーの対応方法
PHPからMySQLに接続する際「getaddrinfo for xxxxxx failed」エラーの対応方法

Podmanコンテナ環境で直前まではPHP→MySQL接続できていたのに「pod ...

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

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