0
我想知道有人能帮我解决这个问题。 我想要更新table1 SET“1”列中所有属于tab1ID值的ID(TABLE1)在列结果中的值为1. 表1中的ID与表2中的tab1ID有关。希望这会清楚:只有在检查另一张表的值后才更新一张表
表1:
id | result |
1 | null |
2 | null |
3 | null |
表2:
id | tab1ID | result |
1 | 1 | 1
2 | 1 | 0
3 | 1 | 1
4 | 2 | 1
5 | 2 | 1
6 | 2 | 1
7 | 3 | 0
8 | 3 | 1
9 | 3 | 1
上的更新的语句应立即更新TABLE1是这样的:
表1:
id | result |
1 | 0 |
2 | 1 |
3 | 0 |
现在在ID2的结果是1,因为table2中所有属于tab1ID(2)的行都有结果值1
我怎样才能用一个更新语句做到这一点?
非常感谢您的帮助。这工作正常!但是最初Table2.Result = NULL。这意味着,如果其中一个Teble2.results为NULL,那么Table1.result将为0。对不起,我应该提到它之前..我的坏.. – user2569468
因此'NULL'计数或不?根据你给出的例子,如果有另外的记录'10 | 2 | NULL',是表1中'1'还是'0'中'2'的值? –
在这种情况下,我想不更新table1。我只想更新table1,如果所有的表2结果是1或0.也许,这是不可能与纯粹的MySQL,我首先必须检查与PHP .. – user2569468