Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.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中是否存在行_Postgresql - Fatal编程技术网

检查postgresql中是否存在行

检查postgresql中是否存在行,postgresql,Postgresql,我在SO中看到过很多关于这方面的帖子。但我无法得到答案。 我希望通过查询检查表中是否存在特定行。如果它存在,它应该返回一个字符串true并停止搜索,如果不存在,则返回false。 -- EXPLAIN ANALYZE WITH magic AS ( WITH lousy AS ( SELECT * FROM one WHERE num = -1) SELECT 'True'::text AS truth WHERE EXISTS (SELECT

我在SO中看到过很多关于这方面的帖子。但我无法得到答案。 我希望通过查询检查表中是否存在特定行。如果它存在,它应该返回一个字符串true并停止搜索,如果不存在,则返回false。

-- EXPLAIN ANALYZE
WITH magic AS (
        WITH lousy AS ( SELECT * FROM one  WHERE num = -1)
        SELECT 'True'::text AS truth
        WHERE EXISTS  (SELECT * FROM lousy)
        UNION ALL
        SELECT 'False'::text AS truth
        WHERE NOT EXISTS (SELECT * FROM lousy)
        )
SELECT *
FROM magic
        ;
但最好只返回布尔值而不是字符串:

select exists (select true from table_name where table_column=?);

你试过什么?如何指定行?按rowid还是按所有属性的值?它必须是一个查询,还是一个PL/SQL函数也可以接受?它的目的是作为一个扰流器。这篇文章绝对是家庭作业,没有表现出任何努力。即使对我来说,你写的也是胡言乱语。您不会提供一个故意混淆的示例,该示例是有效的,但有价值的。例如,您可以指向
案例
存在
的文档,因为它只对知道要查找什么的人有用。它确实有效,并产生正确的结果。让OP向他的老师解释一下。他可以查到case的语法,也可以自己存在。或者对于CTE。-1除了OP之外的其他人阅读了这个答案,试图解决他们自己的类似问题。请注意OP没有表现出任何努力。这只是一个GimmetEcodez问题,任何精通SQL的人都可以回答这个问题(可能有更多的方法达到相同的目标,而不仅仅是这两个答案)
select exists (select true from table_name where table_column=?);