这两种方法哪一种更有效地从大型账户表中检索account_balance?获取最后一个插入的最有效方法
SELECT account_balance FROM accounts
WHERE account_no ='12345'
AND transaction_date =(SELECT MAX(transaction_date) FROM accounts);
SELECT account_balance FROM accounts
WHERE account_no ='12345'
ORDER BY transaction_date DESC LIMIT 1
或者如果有比这两个更好的方法,我想知道。
编辑:transaction_date实际上是一个时间戳。不知道一开始是否对你们显而易见。
您的第一个查询不会返回所需的结果 - 它在子查询中必须具有'WHERE account_no ='12345''。 – a1ex07
怀疑后者更有效率,虽然我没有具体的证据 –
我同意阿萨德。此外,如果您索引transaction_date,这应该很快。 – MikeSmithDev