From 90a97ad9b63d5aa80439a20e7a9db450026d58de Mon Sep 17 00:00:00 2001 From: Federico Caselli Date: Sat, 27 Jun 2020 21:46:28 +0200 Subject: Provide example for exists Fixes: #5423 Change-Id: I716f8de17c49d7eefbbce5ddd9da203bfc9fe47f --- lib/sqlalchemy/sql/selectable.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'lib/sqlalchemy/sql') diff --git a/lib/sqlalchemy/sql/selectable.py b/lib/sqlalchemy/sql/selectable.py index bf6f20436..59c292a07 100644 --- a/lib/sqlalchemy/sql/selectable.py +++ b/lib/sqlalchemy/sql/selectable.py @@ -4929,7 +4929,15 @@ class Exists(UnaryExpression): # use on an existing select() s = select([table.c.col1]).where(table.c.col2==5) - s = exists(s) + s_e = exists(s) + + # an exists is usually used in a where of another select + # to produce a WHERE EXISTS (SELECT ... ) + select([table.c.col1]).where(s_e) + + # but can also be used in a select to produce a + # SELECT EXISTS (SELECT ... ) query + select([s_e]) # construct a select() at once exists(['*'], **select_arguments).where(criterion) -- cgit v1.2.1