# sql syntax

Published articles for sql syntax.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Simplifying ANTI JOIN with jOOQ Syntax

DevFeed: [Simplifying ANTI JOIN with jOOQ Syntax](<https://devfeed.tech/articles/simplifying-anti-join-with-jooq-syntax-28960.md>)

Original publisher: [Read original article](<https://blog.jooq.org/simplifying-anti-join-with-jooq-syntax/>)

Author: lukaseder

Published: 2026-05-07T11:26:46Z

Content type: tutorial

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [rdbms](<https://devfeed.tech/topics/rdbms.md>), [clickhouse](<https://devfeed.tech/topics/clickhouse.md>), [databricks](<https://devfeed.tech/topics/databricks.md>)

Tags: [anti-join](<https://devfeed.tech/tags/anti-join.md>), [clickhouse](<https://devfeed.tech/tags/clickhouse.md>), [databricks](<https://devfeed.tech/tags/databricks.md>), [join-paths](<https://devfeed.tech/tags/join-paths.md>), [jooq](<https://devfeed.tech/tags/jooq.md>), [jooq-in-use](<https://devfeed.tech/tags/jooq-in-use.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sql-syntax](<https://devfeed.tech/tags/sql-syntax.md>)

### AI overview

The article explains how to express an anti join more concisely with jOOQ. It shows that jOOQ can render native anti-join syntax for supported RDBMSs such as ClickHouse and Databricks, translate it for other systems, and use implicit correlated path joins introduced in jOOQ 3.19.

### Source excerpt

ANTI JOIN is a very useful operator from relational algebra. Regrettably, only few dialects support it in terms of SQL syntax, as we've written earlier. In jOOQ, you can write it as follows: If your RDBMS supports this natively (e.g. ClickHouse, Databricks), then it is rendered as such. Otherwise, jOOQ will translate this to: But ... Continue reading Simplifying ANTI JOIN with jOOQ Syntax ->

## An Efficient Way to Check for Existence of Multiple Values in SQL

DevFeed: [An Efficient Way to Check for Existence of Multiple Values in SQL](<https://devfeed.tech/articles/an-efficient-way-to-check-for-existence-of-multiple-values-in-sql-28931.md>)

Original publisher: [Read original article](<https://blog.jooq.org/an-efficient-way-to-check-for-existence-of-multiple-values-in-sql/>)

Author: lukaseder

Published: 2024-02-16T14:16:45Z

Content type: tutorial

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [Benchmark](<https://devfeed.tech/topics/benchmark.md>), [Oracle Database](<https://devfeed.tech/topics/oracle-database.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>)

Tags: [benchmark](<https://devfeed.tech/tags/benchmark.md>), [benchmarking](<https://devfeed.tech/tags/benchmarking.md>), [compare](<https://devfeed.tech/tags/compare.md>), [count](<https://devfeed.tech/tags/count.md>), [database](<https://devfeed.tech/tags/database.md>), [derived-table](<https://devfeed.tech/tags/derived-table.md>), [execution](<https://devfeed.tech/tags/execution.md>), [exists](<https://devfeed.tech/tags/exists.md>), [join](<https://devfeed.tech/tags/join.md>), [limit](<https://devfeed.tech/tags/limit.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [oracle](<https://devfeed.tech/tags/oracle.md>), [oracle-23c](<https://devfeed.tech/tags/oracle-23c.md>), [performance](<https://devfeed.tech/tags/performance.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [rdbms](<https://devfeed.tech/tags/rdbms.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sql-performance](<https://devfeed.tech/tags/sql-performance.md>), [sql-server](<https://devfeed.tech/tags/sql-server.md>), [sql-syntax](<https://devfeed.tech/tags/sql-syntax.md>), [top](<https://devfeed.tech/tags/top.md>)

### AI overview

This article explains how to check whether multiple matching rows exist in SQL. It recommends limiting rows in a derived table before counting them, then compares execution plans and benchmark results for PostgreSQL 15 and Oracle 23c.

### Source excerpt

In a previous blog post, we've advertised the use of SQL EXISTS rather than COUNT(*) to check for existence of a value in SQL. I.e. to check if in the Sakila database, actors called WAHLBERG have played in any films, instead of: Do this: (Depending on your dialect you may require a FROM DUAL clause, ... Continue reading An Efficient Way to Check for Existence of Multiple Values in SQL ->

## Changing SELECT .. FROM Into FROM .. SELECT Does Not "Fix" SQL

DevFeed: [Changing SELECT .. FROM Into FROM .. SELECT Does Not "Fix" SQL](<https://devfeed.tech/articles/changing-select-from-into-from-select-does-not-fix-sql-28934.md>)

Original publisher: [Read original article](<https://blog.jooq.org/changing-select-from-into-from-select-does-not-fix-sql/>)

Author: lukaseder

Published: 2022-05-31T08:39:55Z

Content type: opinion

Language: en

Sources: [jOOQ](<https://devfeed.tech/sources/jooq.md>)

Topics: [SQL](<https://devfeed.tech/topics/sql.md>), [ordering](<https://devfeed.tech/topics/ordering.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [Programming](<https://devfeed.tech/topics/programming.md>)

Tags: [jooq](<https://devfeed.tech/tags/jooq.md>), [jooq-development](<https://devfeed.tech/tags/jooq-development.md>), [operations](<https://devfeed.tech/tags/operations.md>), [order-of-operations](<https://devfeed.tech/tags/order-of-operations.md>), [rdbms](<https://devfeed.tech/tags/rdbms.md>), [sql](<https://devfeed.tech/tags/sql.md>), [sql-syntax](<https://devfeed.tech/tags/sql-syntax.md>), [syntax](<https://devfeed.tech/tags/syntax.md>)

### AI overview

The article examines the difference between SQL's lexical order, such as SELECT .. FROM, and its logical order of operations, such as FROM .. SELECT. It argues that changing the syntax would improve logical consistency but would not fully fix SQL, and discusses jOOQ's support for alternative forms and variations across database systems.

### Source excerpt

Every now and then, I see folks lament the SQL syntax's peculiar disconnect between the lexical order of operations (SELECT .. FROM) the logical order of operations (FROM .. SELECT) Most recently here in a Youtube comment reply to a recent jOOQ/kotlin talk. Let's look at why jOOQ didn't fall into this trap of trying ... Continue reading Changing SELECT .. FROM Into FROM .. SELECT Does Not "Fix" SQL ->