都是一个commit里的,这两种写法哪个更好解决思路

都是一个commit里的,这两种写法哪个更好

需求是查一个max(id),再根据这个max(id)读出对应的数据

SELECT @x AS my_rank,item_id,item_n FROM sec2_reward,(SELECT @x:=(SELECT MAX(id) FROM sec2_reward WHERE id<=11)) r WHERE id=@x;

SELECT MAX(id) as max_id FROM sec2_reward WHERE id<=?;

SELECT item_id,item_n FROM sec2_reward WHERE id=max_id;

第一种explain的时候似乎有子查询

都是一个commit里的,不知哪种写法更好



一样。效率上应该没有什么差别。




第二种容易维护




效率没什么差别,个人倾向第二种,可读性强

都是一个commit里的,这两种写法哪个更好解决思路

相关文章:

你感兴趣的文章:

标签云: