sql - 这个简单的 SQL 查询有什么理由这么慢吗?

标签 sql

此查询需要大约一分钟才能给出结果:

SELECT MAX(d.docket_id), MAX(cus.docket_id) FROM docket d, Cashup_Sessions cus

然而这个:
SELECT MAX(d.docket_id) FROM docket d UNION MAX(cus.docket_id) FROM Cashup_Sessions cus

立即给出结果。我看不出第一个正在做什么会花费这么长时间 - 我的意思是他们都只是检查相同的两个数字列表以获得最大的数字并返回它们。还有什么是我看不到的?

我正在通过 Java 在 MS Access 数据库上使用 jet SQL。

最佳答案

第一个是在两个表之间进行交叉连接,而第二个不是。
这里的所有都是它的。

关于sql - 这个简单的 SQL 查询有什么理由这么慢吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3186175/

相关文章:

sql - 如何限制 Listagg 结果

mysql - 获取不同表之间的最大字段值和它来自的表

Mysql 检索 2 个最大值之间的范围

mysql - 玛丽亚数据库 (MySQL) :Query slow when using sub query

sql - 如何在 SQL Server 2008 中的字符串之间插入字符?

mysql 使用 count 和 distinct count

sql - 如何在 Oracle SQL Developer 中转义下划线?

php - 如何更新与其当前状态相对应的列

mysql - 两天之间的日期

MYSQL 语法错误有两个 WHERE