使用来自不同表中另一行的数据更新行

时间:2015-05-13 22:16:47

标签: php mysql

我是MySQL新手,不太确定如何在检查登录用户是否相同的情况下更新另一个表中的行:

Telefonist='".$_SESSION["UserName"]."

而且我还需要检查日期是否相同,以便在连续的正确日期找到合适的人:

log.Datum=telefonisti_podaci.Datum

这里我试图计算所有1并在特定位置输入从table1到table2的sum。

代码:

$sql_zapis_do30 = "UPDATE telefonisti_podaci
SET `Total tura do 30` = (Select COUNT(*) `Ture do 30` from log,telefonisti_podaci WHERE `Ture do 30` is not null AND `Ture do 30`=1 AND log.Datum=telefonisti_podaci.Datum )
WHERE `Telefonist`='".$_SESSION["UserName"]."'";
CustomQuery($sql_zapis_do30);

我收到错误:

You can't specify target table 'telefonisti_podaci' for update in FROM clause

由于

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题:

$sql_zapis_do30 = "UPDATE telefonisti_podaci
SET `Total tura do 30` = (Select COUNT(`Ture do 30`) from log WHERE `Telefonist`='".$_SESSION["UserName"]."' AND `Ture do 30`=1 AND `Datum`='".$datum_danas."')
WHERE `Telefonist`='".$_SESSION["UserName"]."' AND `Datum`='".$datum_danas."'";

它现在有效 感谢