SQL语句 高手帮我看看我哪里错了

来源:百度知道 编辑:UC知道 时间:2024/07/15 13:39:58
update accounts set accesslevel = 1
where accounts.username in (select username from characters where characters.curhp >300000 and accounts.logged_in=1)

为什么他没有按要求curhp字段大于300000,logged_in字段=1,才执行命令呢。
而是logged_in=1他就执行了直接忽略了>3000000
求各位高手解答

update accounts set accesslevel = 1
where accounts.username in (select username from characters where characters.curhp >300000) and accounts.logged_in=1

应该这样才可以的啊,你把accounts.logged_in=1加了里边不行的,因为这个字段不是characters表的,而是accounts表的字段啊

你改成下面的试试:
update accounts set accesslevel = 1
where accounts.username in (select username from characters,accounts where characters.curhp >300000 and accounts.logged_in=1)