您的位置:首页 > 数据库

《SQL反模式之“意大利面条式查询”》

2015-01-12 17:28 393 查看
对SQL简约率的探讨

1、简约率:当你有两个相互竞争的理论能得出同样的结论,那么简单的那个更好。

2、当我们需要查询多个表的多个字段时,可以不必局限于一个复杂的sql,而是可以采用分而治之的方法:比如,采用union单独查询结果集,以免生成笛卡尔积影响查询结果的正确性。

3、使用sql自动生成sql,批量生成sql,防止复杂的sql

SELECT CONCAT('UPDATE Inventory' SET last_used =''',MAX(u.usage_date),'''',' WHERE inventory_id = ', u.inventory_id,';') AS update_statement

FROM ComputerUsage U

GROUP BY u.inventory_id;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: