Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PostgreSQL-为什么该语句会导致语法错误?_Sql_Postgresql - Fatal编程技术网

PostgreSQL-为什么该语句会导致语法错误?

PostgreSQL-为什么该语句会导致语法错误?,sql,postgresql,Sql,Postgresql,为什么此语句会在或附近导致语法错误?请尝试以下操作- SELECT (SELECT COUNT(*) FROM table1) AS count1 WHERE date='2019-06-12', (SELECT COUNT(*) FROM table2) AS count2 WHERE date='2019-06-12' 需要在子查询中添加where子句 SELECT (SELECT COUNT(*) FROM table1 WHERE date='2019-

为什么此语句会在或附近导致语法错误?

请尝试以下操作-

SELECT
        (SELECT COUNT(*) FROM table1) AS count1 WHERE date='2019-06-12',
        (SELECT COUNT(*) FROM table2) AS count2 WHERE date='2019-06-12'
需要在子查询中添加where子句

SELECT
(SELECT COUNT(*) FROM table1 WHERE date='2019-06-12')  AS count1 ,
(SELECT COUNT(*) FROM table2 WHERE date='2019-06-12') AS count2 

让我们重写语句,用一个简单的值替换括号中的SELECT:

SELECT
       (SELECT COUNT(*) FROM table1 WHERE date='2019-06-12') AS count1 ,
       (SELECT COUNT(*) FROM table2 WHERE date='2019-06-12') AS count2 
现在很容易看出,直到逗号为止,您都有一个有效的SQL查询,但是您添加了更多要选择的值,这是无效的

我假设您希望在子查询中包含where:

SELECT
        1 AS count1 WHERE date='2019-06-12',
        2 AS count2 WHERE date='2019-06-12'
SELECT
        (SELECT COUNT(*) FROM table1 WHERE date='2019-06-12') AS count1,
        (SELECT COUNT(*) FROM table2 WHERE date='2019-06-12') AS count2