php - 为什么 MySQL 语句被忽略?

标签 php mysql sql mysqli

为什么是n.author='$host[id]'被忽略?

$host[id]=5;
SELECT  
n.id,n.name,n.text,
r.title,
COUNT(c.news_id) comments
FROM news n LEFT JOIN rub r
 ON
 r.news_id=n.id 
 LEFT JOIN comments c 
  ON 
n.id = c.news_id AND c.status='1' AND n.author='$host[id]'
GROUP BY n.id
 ORDER BY n.id DESC LIMIT 10

我只需要 'news'.'author'=$host[id] 的行,但执行此查询我从表中获取了所有新闻。为什么会发生这种情况?

最佳答案

$host[id]=5;

SELECT n.id,n.name,n.text, r.title, COUNT(c.news_id) comments
FROM news n 
LEFT JOIN rub r ON r.news_id = n.id 
LEFT JOIN comments c ON c.news_id = n.id AND c.status = '1'
WHERE n.author = '$host[id]'
GROUP BY n.id
ORDER BY n.id DESC LIMIT 10

关于php - 为什么 MySQL 语句被忽略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20933347/

相关文章:

sql - 选取每个用户最后一条记录前一个月内的数据

PHP 无法计算 4 个数据输出

php - 如何仅使用 php 将 .docx/.doc 文件转换为 .pdf

php - 将 JSON 解析为 JSONArray

php - 为什么我的数据在MySQL中插入了两次

mysql - 检索行中的不同值并计算总数

MySQL在函数中使用表列来创建用于排序的别名

mysql - 第三个嵌套的 Mysql Select 查询导致巨大的性能问题

php - 如何同时生成使用 DOMPDF 生成的 PDF 并通过电子邮件发送?

sql - 如何在 sql server 2008 的存储过程中使用 if 比较两个字符串?