SQL-使用来自另一个表的信息更新表

马克·奥弗顿

我正在尝试在公司网上商店中进行更新,但我竭尽全力试图找出正确的SQL命令来执行以下操作:

我有三个表:

Products
------------
pId
pSearchParams


ProductCategories
------------------
pcProductId      // products.pId
pcCategoryId     // categories.catId


Categories
----------
catId
catName

我需要pSearchParams使用products表中字段的信息来更新表中的catName字段categories

我这样做的唯一方法是将products链接productcategories表,因为productcategories表是我可以在products表和categories之间建立链接的唯一方法

问题是在productcategories表格中,pcProductId很可能在多行中包含相同的信息,同样适用pcCategoryId(例如,产品可以在多个类别中)

我需要运行一条UPDATE语句以使用相关的类别名称更新pSearchParams中的所有字段,以products允许使用多个类别名称。

如果我需要提供更多信息,请告诉我。谢谢。

瓦西尔·尼科洛夫(Vasil Nikolov)
UPDATE products AS p
JOIN productcategories AS pc ON (p.pId = pc.pcProductId)
JOIN categories AS c ON (pc.pcCategoryId = c.catId)
SET p.pSearchParams = c.catName

更新

UPDATE products AS p
SET p.pSearchParams = (
    SELECT GROUP_CONCAT(c.catName SEPARATOR ' ')
    FROM productcategories AS pc
    JOIN categories AS c ON (pc.pcCategoryId = c.catId)
    WHERE pc.pcProductId = p.pId
    GROUP BY pc.pcProductId
)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据来自另一个表的信息更新同一SQL表中的行-MSSQL

来自分类Dev

来自另一个表的MS SQL 2005更新记录

来自分类Dev

每天使用另一个表中的值更新sql表

来自分类Dev

使用来自另一个记录的值更新SQL记录

来自分类Dev

从另一个表SQL更新列值

来自分类Dev

用于更新WHERE条件来自另一个表的列的SQL代码

来自分类Dev

SQL:如何使用另一个表中的信息选择某些内容

来自分类Dev

SQL Join(全部来自一个表,另一个来自另一个表)

来自分类Dev

SQL:从另一个分组表更新表

来自分类Dev

SQL更新表使用另一个查询的结果

来自分类Dev

从另一个表SQL Server更新值

来自分类Dev

使用来自SQL Server中另一个表的ID更新现有表的新外键列

来自分类Dev

SQL / MS Access:在SQL表中添加一个自动更新的字段,其中包含来自另一个表的值的总和

来自分类Dev

使用来自另一个表的信息更新SQL Server中的表

来自分类Dev

SQL更新表使用另一个数据库中的表

来自分类Dev

SQL Delete使用另一个表的值

来自分类Dev

Oracle SQL Function使用来自另一个架构的数据表示表或视图不存在

来自分类Dev

SQL-根据另一个表中的信息在一个表中搜索并返回多个结果

来自分类Dev

用于更新WHERE条件来自另一个表的列的SQL代码

来自分类Dev

SQL:从另一个分组表更新表

来自分类Dev

Sql匹配id与来自与另一个表匹配的表的名称

来自分类Dev

sql从另一个表snappydata更新表

来自分类Dev

来自另一个表的 SQL COUNT 行

来自分类Dev

如何使用带有来自另一个表的值的 SQL 查询

来自分类Dev

SQL:从不包含来自另一个表的值的表中选择数据

来自分类Dev

SQL - 使用另一个表中的单个行更新行

来自分类Dev

用来自另一个表的 id 替换由字符串分隔的列 - SQL Server

来自分类Dev

SQL - 来自另一个表的 WHERE 条件

来自分类Dev

使用来自另一个表的值的 SQL 更新表

Related 相关文章

  1. 1

    根据来自另一个表的信息更新同一SQL表中的行-MSSQL

  2. 2

    来自另一个表的MS SQL 2005更新记录

  3. 3

    每天使用另一个表中的值更新sql表

  4. 4

    使用来自另一个记录的值更新SQL记录

  5. 5

    从另一个表SQL更新列值

  6. 6

    用于更新WHERE条件来自另一个表的列的SQL代码

  7. 7

    SQL:如何使用另一个表中的信息选择某些内容

  8. 8

    SQL Join(全部来自一个表,另一个来自另一个表)

  9. 9

    SQL:从另一个分组表更新表

  10. 10

    SQL更新表使用另一个查询的结果

  11. 11

    从另一个表SQL Server更新值

  12. 12

    使用来自SQL Server中另一个表的ID更新现有表的新外键列

  13. 13

    SQL / MS Access:在SQL表中添加一个自动更新的字段,其中包含来自另一个表的值的总和

  14. 14

    使用来自另一个表的信息更新SQL Server中的表

  15. 15

    SQL更新表使用另一个数据库中的表

  16. 16

    SQL Delete使用另一个表的值

  17. 17

    Oracle SQL Function使用来自另一个架构的数据表示表或视图不存在

  18. 18

    SQL-根据另一个表中的信息在一个表中搜索并返回多个结果

  19. 19

    用于更新WHERE条件来自另一个表的列的SQL代码

  20. 20

    SQL:从另一个分组表更新表

  21. 21

    Sql匹配id与来自与另一个表匹配的表的名称

  22. 22

    sql从另一个表snappydata更新表

  23. 23

    来自另一个表的 SQL COUNT 行

  24. 24

    如何使用带有来自另一个表的值的 SQL 查询

  25. 25

    SQL:从不包含来自另一个表的值的表中选择数据

  26. 26

    SQL - 使用另一个表中的单个行更新行

  27. 27

    用来自另一个表的 id 替换由字符串分隔的列 - SQL Server

  28. 28

    SQL - 来自另一个表的 WHERE 条件

  29. 29

    使用来自另一个表的值的 SQL 更新表

热门标签

归档