Вставьте аналогичные данные в две таблицы с помощью php.

StackOverflow https://stackoverflow.com/questions/809328

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня есть следующий код, который я использую для вставки данных формы в одну таблицу в моей базе данных.`

function insert_interests($uid, $interests) {
/* first, we'll delete any entries this user already has in the table */
    purge_lookup("jss_users_interests_table", $uid);
/* now create the sql insert query */
    global $db;
    $db->query(create_checkbox_query($interests, "jss_users_interests_table", $uid));
}
/* helper function for insert_interests(). removes all rows in $table with $uid */
function purge_lookup($table, $uid) {
    global $db;
    $db->query("DELETE FROM $table WHERE users_id = '".$db->escape($uid)."'");
}
/* helper function for insert_interests(). generates the actual SQL query */
function create_checkbox_query($arr, $table, $uid) {
    $q = "INSERT INTO $table (users_id, subcategories_id) VALUES";
    foreach ($arr as $check) {
    $q .=  " ( '$uid' , $check )" . ",";
    }
/* remove the last comma and return */  
return substr($q, 0, -1);
}`

Вслед за этим кодом я хотел бы использовать те же данные формы в сочетании с другими данными в другой таблице, чтобы вставить новую запись в другую таблицу.Вот структура обеих таблиц.

jss_users_interests_table

  • user_id
  • subcategories_id

jss_info_requests_table

  • user_id
  • идентификатор_провайдера
  • subcategories_id

jss_providers_assignments_table

  • идентификатор_провайдера
  • subcategories_id

Итак, что мне нужно сделать после вставки данных в jss_users_interests_table вставляет одни и те же данные вместе с каждым subcategories_id's соответствующий provider_id из jss_provider_assignment_table в jss_info_requests_table.Имеет смысл?Я что-то усложняю и усложняю?

Любая помощь с синтаксисом была бы потрясающей.Спасибо!

Это было полезно?

Решение

Этот SQL может работать.

 INSERT INTO jss_info_requests_table 
 (users_id, provider_id, subcategories_id)
SELECT a.users_id,
 b.provider_id, b.subcategories_id FROM
 jss_users_interests_table a,
 jss_providers_assignments_table b 
 WHERE a.subcategories_id =
 b.subcategories_id AND a.users_id =
 [USERID]
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top