У меня есть 2 таблицы первого является продуктом страниц посетилиКаков наилучший способ обновить одну таблицу от другой в SQL?
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| idproduct | varchar(128) | YES | | NULL | |
| logdate | date | YES | | NULL | |
| idmagasin | int(20) | YES | | NULL | |
| idenseigne | int(20) | YES | | NULL | |
| commanded | int(2) | YES | | 0 | |
+------------+--------------+------+-----+---------+----------------+
И второй один продукт заповедал
+-------------+--------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+-------------------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| idproduct | varchar(255) | NO | | NULL | |
| idenseigne | int(11) | NO | | NULL | |
| idmagasin | int(11) | NO | | NULL | |
| ingredients | tinytext | YES | | NULL | |
| date | timestamp | NO | | CURRENT_TIMESTAMP | |
+-------------+--------------+------+-----+-------------------+----------------+
Как я обновить столбец заповедал in product_visited, if product_visited.idproduct = product_commanded.idproduct and product_visited.logdate = product_commanded.date
Я смущен, чтобы использовать внутреннего соединение или существует
Я хочу update product_visited.commanded = 1
, когда значение logdate
и idproduct
существует в product_commanded, это будет означать, что продукт посетил командует слишком
Вы хотите присоединиться к таблицам, используя существует не позволит использовать любое из полей из подзапроса, чтобы обновить основную таблицу. –
Вы помещаете условия предиката, которые вы указываете, в предложение where в своем заявлении об обновлении. Но чтобы получить полный SQL, вы должны сказать нам, какое значение (или выражение, которое можно оценить), к которому вы хотите обновить столбец 'commanded'. –
@RichBenner я читал документ для «join», но когда мы присоединяемся, можем ли мы обновить таблицу в одно и то же время? – parik