mysql - 需要帮助将 2 个查询合并为 1 个

标签 mysql

任何人都可以告诉我为什么我在该查询的 where 子句之前不断收到错误吗?如果我没有任何 where 子句,它就可以正常工作。

SELECT  
  (SELECT COUNT(DISTINCT threadid) FROM thread) AS threads,  
  (SELECT COUNT(DISTINCT postid) FROM post) AS posts  
WHERE
  post.dateline >= 1299905258 AND
  thread.dateline >= 1299905258

两个表都有日期线字段。这是语法问题还是我试图完成一些无法通过这种方式完成的事情?

最佳答案

FROM 子句在哪里?

基本上,当您没有 WHERE 子句时,它只会为您获取 2 列。当您定义 where 子句时,这意味着您正在过滤某个表中的结果..所以现在您需要 FROM

你可以试试这个

SELECT
(SELECT COUNT(DISTINCT threadid) FROM thread WHERE dateline >= 1299905258) AS threads,
(SELECT COUNT(DISTINCT postid) FROM post WHERE dateline >= 1299905258) AS posts

关于mysql - 需要帮助将 2 个查询合并为 1 个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6052599/

相关文章:

MySQL:将另一个表中的值插入一列

mysql - 如何将文本附加到另一个单元格中的文本?

php - 使用 php 检查数据库中两个范围是否相交

mysql - 将行重定向到另一行mysql

php - MySQL:用第二个查询的结果替换第一个查询的结果

php - 是否使用一对一 MySQL 关系?

Mysql加入创建 View 命令

php - Laravel 不会让我迁移表,因为它已经存在

mysql - 这个(规范化的)数据库结构是否允许我按照我的意图通过标签进行搜索?

mysql - Galera 集群问题