Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySql SELECT Union für verschiedene Spalten?

Wenn Sie verschiedene Felder haben, die auch unterschiedliche Bedeutung haben, können und sollten Sie sie nicht an derselben Position zurückgeben. Sie können jedoch 'die Lücken füllen', indem Sie Ihren Feldern Null hinzufügen, wie hier:

select id, name, date, null as userid, 'A' as recordtype from table1
union all
select id, name, null /*as date*/, userid, 'B' as recordtype from table2 

Sie können in der ersten Auswahl einen Alias ​​für die Null angeben. Sie können der Übersichtlichkeit halber Aliase in der zweiten Auswahl hinzufügen, diese werden jedoch nicht verwendet. Sie können sogar konstante Werte verwenden, anhand derer Sie später den Datensatztyp unterscheiden können.