2012-07-15 67 views
0

我有一個登記表(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做這項工作,但我認爲加入/更新會比選擇/更新更快

+0

我不認爲你可以更新'other_table'內的值 – hjpotter92 2012-07-15 16:58:25

回答

0

我認爲如果您在應用程序中處理條件層,而不是數據庫層