SQL查询语法错误
我在这个查询语法错误,但我不知道我做错了什么。SQL查询语法错误
UPDATE `jos_planning2_rosters` r
LEFT JOIN jos_planning2_rosters_setup s ON r.id = s.roster_id
LEFT JOIN jos_planning2_workplaces w ON s.workplace_id = w.id
WHERE r.roster_state =1
AND s.card_id IS NULL
AND s.type_id = '2'
AND r.roster_date >= DATE(NOW()) SET s.card_id = '1', s.type_id = '1'
WHERE s.type_id = '2', s.card_id IS NULL, r.id = '8';
你们是不是要做到这一点,查询是一个烂摊子:
UPDATE s
SET s.card_id = '1',
s.type_id = '1'
From jos_planning2_rosters_setup s
INNER JOIN jos_planning2_rosters r ON r.id = s.roster_id
WHERE r.roster_state = 1
AND s.card_id IS NULL
AND s.type_id = '2'
AND r.roster_date >= GetDate()
AND r.id = '8';
尝试一下没有那些反引号jos_planning2_rosters
。
都能跟得上没有工作:( – Fabian
@Fabian,我觉得OP是正确的,你有两个WHERE语句,这是不好的。 – Dave
UPDATE'jos_planning2_rosters' [R \t \t LEFT JOIN jos_planning2_rosters_setup S于r.id = s.roster_id \t \t LEFT JOIN jos_planning2_workplaces瓦特ON s.workplace_id = w.id \t \t SET s.card_id = '1',s.type_id = 1 WHERE \t \t s.type_id = 2,s.card_id IS NULL,R。 id ='8';这是我的新查询,但仍然不起作用 – Fabian
在查询中有两个WHERE
子句。
,我们不知道该错误信息是什么... –
尝试更换UPDATE'jos_planning2_rosters'与更新“jos_planning2_rosters”( ' - >') – fceruti
这是tsql吗?您可以为更新的表设置别名。但没有一个conrete错误信息,它只是猜测 – Jan