SQL 如果 userid = x 且 eventid = x,则设置为 yes
SQL set attending to yes if userid = x and eventid = x
我非常是SQL的新手并且已经运行使用[=30]从android应用程序到phpmyadmin的简单查询=].现在我在处理稍微复杂一点的查询时遇到了问题,甚至不确定我的语法是否正确。
我愿意:
- 检查用户是否有活动条目,如果有,则相应地更新出勤率(在本例中,我会更新为是)
- 如果没有事件条目我想插入一个(见代码)
SELECT * FROM user_has_event
IF user_user_id = 1 AND event_event_id = 1
THEN
SET attendance= 'Yes'
ELSE
INSERT INTO user_has_event (user_user_id = 1, event_event_id = 1, attendance = 'Yes')
有人能给我指出正确的方向吗?
你似乎想要insert . . . on duplicate key update
:
insert into user_has_event(user_user_id, event_event_id, attendance)
values (1, 1, 'yes')
on duplicate key update attendance = 'yes';
请注意,要使其正常工作,您需要 user_has_event(user_user_id, event_event_id)
上的唯一索引(具有这两列的主键同样有效)。
我非常是SQL的新手并且已经运行使用[=30]从android应用程序到phpmyadmin的简单查询=].现在我在处理稍微复杂一点的查询时遇到了问题,甚至不确定我的语法是否正确。
我愿意:
- 检查用户是否有活动条目,如果有,则相应地更新出勤率(在本例中,我会更新为是)
- 如果没有事件条目我想插入一个(见代码)
SELECT * FROM user_has_event
IF user_user_id = 1 AND event_event_id = 1
THEN
SET attendance= 'Yes'
ELSE
INSERT INTO user_has_event (user_user_id = 1, event_event_id = 1, attendance = 'Yes')
有人能给我指出正确的方向吗?
你似乎想要insert . . . on duplicate key update
:
insert into user_has_event(user_user_id, event_event_id, attendance)
values (1, 1, 'yes')
on duplicate key update attendance = 'yes';
请注意,要使其正常工作,您需要 user_has_event(user_user_id, event_event_id)
上的唯一索引(具有这两列的主键同样有效)。