mysql - 可以在内部联接或左联接中更新 MySQL 查询
问题描述
我可以使用我的连接查询中的连接查询在 MySQL 中用多个表更新多行吗,有人能给我一些例子吗?
这是我的查询:
SELECT
p.ID,
p.post_date,
p.post_modified,
p.post_title,
p.post_status,
p.post_type,
GROUP_CONCAT(distinct t_cat.name separator ', ') as category,
GROUP_CONCAT(distinct t_tag.name separator ', ') as tags,
CONCAT('[',GROUP_CONCAT(distinct JSON_OBJECT('key', pm.meta_key,'value',pm.meta_value)),']') as meta
FROM wp_c3g3f5_posts p
JOIN wp_c3g3f5_postmeta pm ON pm.post_id = p.ID AND pm.meta_key IN (
'_sku',
'_stock',
'_stock_status',
'_visibility',
'_weight',
'_width',
'_height',
'_length',
'_featured',
'_regular_price',
'_sale_price')
JOIN wp_c3g3f5_term_relationships tr ON tr.object_id = p.id
LEFT JOIN wp_c3g3f5_term_taxonomy tt_cat ON tt_cat.term_taxonomy_id = tr.term_taxonomy_id AND tt_cat.taxonomy IN ('product_cat')
LEFT JOIN wp_c3g3f5_terms t_cat ON t_cat.term_id = tt_cat.term_id
LEFT JOIN wp_c3g3f5_term_taxonomy tt_tag ON tt_tag.term_taxonomy_id = tr.term_taxonomy_id AND tt_tag.taxonomy IN ('product_tag')
LEFT JOIN wp_c3g3f5_terms t_tag ON t_tag.term_id = tt_tag.term_id
WHERE p.ID = ?
GROUP BY p.ID
解决方案
我不太明白你的问题,但如果你想根据其他表中的数据更新表中的多行,是的,如果你想更新多个不同表中的多行,那只会是可以通过使用存储过程或类似的东西。
推荐阅读
- r - R:创建一个表格,其中单元格在 rbind 后有 1 或 0 位小数
- java - WebMvcTest 需要在 SpringBootApplication 类中定义的模拟 bean
- c# - MVC 中的 ArcGauge 功能
- sql-server - SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER- 已尝试一切
- regex - 用于从字符串中准确提取 10 位数字的正则表达式
- java - 如何对两个不同大小的数组进行计算?
- excel - 查找行块平均值之间的中位数
- ruby-on-rails - 我想将两个值连接成一个字符串
- r - 如何将观察结果添加到现有数据框列?
- javascript - 如何将 1000 多行复制到新的 Google 表格?