Php 选择不存在pdo的位置
我有一个问题Php 选择不存在pdo的位置,php,mysql,pdo,Php,Mysql,Pdo,我有一个问题 SELECT * FROM `user` WHERE NOT EXISTS ( SELECT * FROM roleInEvent WHERE user.userId = roleInEvent.userId AND eventId = 1 ) AND user.disciplineId =5 每当我在mysql控制台中运行它时,它都会返回1行。这是正确的。 然而,在我的php脚本中,它返回零行,而它是完全相同的查询 我的php脚本如下所示: $db = Databa
SELECT *
FROM `user`
WHERE NOT
EXISTS (
SELECT *
FROM roleInEvent
WHERE user.userId = roleInEvent.userId
AND eventId = 1
)
AND user.disciplineId =5
每当我在mysql控制台中运行它时,它都会返回1行。这是正确的。
然而,在我的php脚本中,它返回零行,而它是完全相同的查询
我的php脚本如下所示:
$db = DatabaseHelper::get();
$st = $db->prepare('SELECT *
FROM `user`
WHERE NOT
EXISTS (
SELECT *
FROM roleInEvent
WHERE user.userId = roleInEvent.userId
AND eventId = 1
)
AND user.disciplineId =5');
$st->execute();
if ($st->errorCode() !== \PDO::ERR_NONE) {
return null;
}
有人知道这里的问题是什么吗?您也可以将
中的与不一起使用,例如:
SELECT * FROM user WHERE id_user NOT IN ( SELECT other_data FROM roleInEvent WHERE user.userId = roleInEvent.userId AND eventId = 1 ) AND user.disciplineId =5
如果查询:从roleInEvent中选择其他_数据,其中user.userId=roleInEvent.userId和eventId=1
为您带来了一些信息,则该结果不必存在于用户
表中
另一个例子是:
用户表:
---------------------------
id_user | name_user
1 fernando
2 urban
在另一个表中,我们有块用户:
阻止用户:
因此,我只想为我带来block users表中不存在的用户:
查询将是:
SELECT * FROM Users WHERE id_user NOT IN ( SELECT id_user FROM blocked_users )
因此,我们得到的最后一个查询是:
id_user | name_user
2 john lennon
你好 解决方法很简单。
我忘了将结果返回到javascript你怎么知道它返回零行?在您发布的代码中,您甚至没有尝试获取查询结果。一旦执行了查询,您必须使用某种形式的Fetch Wow来处理结果集。你帮了我很多。。。我用的是退货。。。它需要是我的javascriptOk的回音,所以它被回答了,是你自己回答的帖子吗?
id_user | name_user
2 john lennon