MySQLソリューションの場合、UNION
を使用できます ゼロ行のクエリ用語ですべての列の名前を設定し、その後、より複雑なものをクエリするには:
SELECT null AS a, null AS b, null AS c FROM dual WHERE false
UNION ALL
SELECT <expr>, <expr>, <expr>
FROM <realtable>...
UNIONの最初のクエリ用語のみが、クエリ全体の列名を定義します。後続のクエリ用語の列名(またはその欠如)は、最終的な列名には影響しません。
番号を知っている必要があります 列の数ですが、2つのクエリ用語を分離しておくのは非常に簡単です。私の知る限り、これはOracleとMySQLの両方で機能します(ただし、テストしたのはMySQLのみで、Oracleではテストしていません)。