勉強したことのメモ

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にてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法
MySQLにてSELECT時にdate型のカラムから干支(十二支)を計算し表示する方法

MySQLにdate型のカラムに誕生年月日が格納されており、そこから干支(十二支 ...

MySQLのRANK及びDENSE_RANK関数を用いてランキングを実装する方法
MySQLのRANK及びDENSE_RANK関数を用いてランキングを実装する方法

ランキング機能を実装する際、上位〇位までのデータをMySQLから持ってきて順位付 ...

MySQLでサイズの大きいファイルをインポートする際の注意点
MySQLでサイズの大きいファイルをインポートする際の注意点

MySQLでサイズの大きい(3GBほどの)dumpファイルを異なるサーバに移行し ...

MySQLで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法
MySQLで直近に挿入したオートインクリメントの値と次回挿入する値を取得する方法

phpとmysqliを使っている中で次回挿入するオートインクリメントの値と、前回 ...

MySQLで全文検索(フルテキストインデックス)を使用する方法
MySQLで全文検索(フルテキストインデックス)を使用する方法

普段利用しているサイトに検索用のテキストボックスがあり、そこに何らかのワードを入 ...