so i have 3 Sql tables, I run this command
INSERT INTO `wp_atkv_EWD_OTP_Customers` (`Customer_ID`,`Customer_Email`,`Customer_Created`)
SELECT
`User_ID`,
`Username` ,
`User_Date_Created`
FROM `wp_atkv_EWD_FEUP_Users`
and it works perfectly fine I want to add data from another table using the same user id but then I run the command below it says duplicate error? Should I not be using insert into? also if i ignore the duplicate it just creates new entries I want them all in the same row
INSERT INTO `wp_atkv_EWD_OTP_Customers` (`Customer_ID`,`Customer_Name`)
SELECT
`User_ID`,
group_concat(`Field_Value`)
FROM `wp_atkv_EWD_FEUP_User_Fields`
GROUP by `User_ID`
What Should I do how can I update with the third table?
I'm expecting a join
:
INSERT INTO wp_atkv_EWD_OTP_Customers (Customer_ID, Customer_Email, Customer_Created, Customer_Name)
SELECT u.User_ID, u.Username, u.User_Date_Created, uf.vals
FROM wp_atkv_EWD_FEUP_Users u LEFT JOIN
(SELECT User_ID, group_concat(Field_Value) as vals
FROM wp_atkv_EWD_FEUP_User_Fields
GROUP by User_ID
) uf
ON u.user_id = uf.user_id;
Alternatively, you might want an update
:
update wp_atkv_EWD_OTP_Customers c join
(select `User_ID`, group_concat(`Field_Value`) as vals
from `wp_atkv_EWD_FEUP_User_Fields`
group by `User_ID`
) uf
on c.customer_id_id = cf.user_id
set Customer_Name = uf.vals;