私はそれが可能ではないと思っていますが、とにかく質問すると思いました。クエリの列名が重複しています
私はそれは親切にも私の王女とユニコーンのすべてを返すことだな...
SELECT p.*, u.* FROM princess p JOIN unicorn u ON p.id = u.princess_id
としてMySQL 5 +クエリを持っています;)。問題は、返された結果セットに重複した列名が含まれている可能性があります。両方のテーブルにname
という名前の列がある場合は、p.name as 'princess_name'
とu.name as 'unicorn_name'
のようなエイリアスを明示的にコーディングせずにどのように区別できますか?
また、私は列インデックスを使用できませんので、より良い方法がない場合は、すべてのエイリアスを自分で手渡します。
"エイリアスを明示的にコーディングせずに" - エイリアスには何が問題なのですか?クエリでエイリアスを使用しない場合、特に列名が同一の場合のユースケースは何ですか? –
重複する列がある場合、一部のMySQLライブラリはテーブル名を自動的に列名に追加します。しかし、エイリアスを明示的に指定することは常に推奨されます。 – Karolis