I am doing a union on two tables that have some of the same column names. So, say they look something like this:
table1 ========= _id fk_id name details createdAt updatedAt table2 ========= _id fk_id name age details createdAt updatedAt
Here is what I am currently doing:
SELECT * FROM "table1" JOIN table2 ON table1."fk_id"=table2."fk_id";
Currently I obviously get repeated columns. So here is what I want to do:
1- The table2’s columns name
and details
, I would like to rename to t1_name
and t2_details
respectively
2- I would like to drop table2’s _id
, fk_id
, createdAt
and updatedAt
properties. How do I do that?
Advertisement
Answer
Just enumerate the columns that you want to retain, and alias them as needed:
select t1._id, t1.fk_id, t1.name t1_name, t1.details t1_details, t1.createdAt, t1.updatedAt, t2.name t2_name, t2.age, t2.details t2_details from table1 t1 inner join table2 t2 on t1.fk_id = t2.fk_id