首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Mysql >

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

2012-03-17 
都是一个commit里的,这两种写法哪个更好需求是查一个max(id),再根据这个max(id)读出对应的数据SELECT @x A

都是一个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里的,不知哪种写法更好

[解决办法]
一样。效率上应该没有什么差别。
[解决办法]
第二种容易维护
[解决办法]
效率没什么差别,个人倾向第二种,可读性强

热点排行