有条件陈述的加入/更新表格?

时间:2012-07-15 16:55:24

标签: mysql join

我有一个注册表( id , counter , group_name , type )

和包含这些表的组表

software_group  
website_group
news_group 
 etc ..

每个组都在注册表中以及它自己的组表

现在,如果我想更新注册表中的一行,我希望适当的组表也更新

type列表示组表,所以我有类似的内容:

UPDATE registry JOIN 

CASE WHEN registry.type = 1 THEN software_group 
CASE WHEN registry.type = 2 THEN website_group
CASE WHEN registry.type = 3 THEN news_group 

AS other_table 

ON registry.id = other_table.reg_id
  SET registry.name = $newname
  ,
  other_table.name = $newname

WHERE registry.id = $id

可以做这样的事吗?我可以选择注册表行并使用php完成工作,但我认为加入/更新会比选择/更新更快

1 个答案:

答案 0 :(得分:0)

我认为如果您处理应用程序层中的条件而不是数据库层,那么在运行时动态连接表将是最佳的