1
在MariaDB的/ MySQL的所有条目我有这样的一个表:选择匹配最早的条目
table (key1, key2, date)
与INDEX(key1, key2)
现在我想坐最早的条目:
SELECT * FROM `table` ORDER BY `date` ASC LIMIT 1
而且最后从第一个查询中匹配key1
和key2
的所有条目:
SELECT * FROM `table` WHERE `key1` = ? AND `key2` = ?
这可以简化为一个查询吗?
这看起来很有趣。你知道这个查询是否会比Gordon Linoff的JOIN解决方案有更好/更差的性能? – user2015253
不,我没有进行任何性能测试,但如果有任何此类结果可用,我会感兴趣。 我会与亚历克斯池的回答Stackoverflow上的问题,以前问两种不同的方法之间的差异。 [https://stackoverflow.com/questions/30078464/difference-between-with-clause-and-subquery] 我个人发现WITH版本更具可读性,因为使用了一个名字(我在上面的例子中使用了t_oldest )。在这方面更复杂的查询将会受益匪浅。 – smile2day