2012-01-17 79 views
0

我嘗試它下面的代碼notwork我客人也許where子句不orectMySQL的更新一個從另一個表的表

update member set member.`status` = 4 
    where member.idmember = select DISTINCT activitynote.idmemberref where activitynote.checkkey =4 

然後我嘗試

update member, activitynote set member.`status` = 4 
where member.idmember = activitynote.idmemberref 
and activitynote.checkkey = 4 

該代碼的工作,但沒有的事我想請幫助

member.idmember是主鍵和activitynote.idmemberref可以是重複的

+0

爲什麼第二個查詢不是你想要的? – 2012-01-17 05:08:17

+0

你想要什麼? – Abhay 2012-01-17 07:22:12

回答

2

如果我理解正確,那麼它應該解決問題。

update member set member.`status` = 4 
where member.idmember IN 
(select DISTINCT activitynote.idmemberref from activitynote where activitynote.checkkey =4) 
+0

1064 - 您的SQL語法錯誤;請檢查第3行的'where activitynote.checkkey = 4'附近使用的正確語法對應的MySQL服務器版本的手冊。 – user1040364 2012-01-17 05:40:49

+0

沒有from子句,對不起我的錯誤。 – Zohaib 2012-01-17 06:25:39

+0

不需要'DISTINCT'。 – 2012-01-17 06:35:53