在一项新工作中,我刚刚接触了将逻辑放入sql语句的概念.
在MySQL中,一个愚蠢的例子是这样的:
SELECT P.LastName,IF(P.LastName='Baldwin','Michael','Bruce') AS FirstName FROM University.PhilosophyProfessors P // This is like a ternary operator; if the condition is true,it returns // the first value; else the second value. So if a professor's last name // is 'Baldwin',we will get their first name as "Michael"; otherwise,"Bruce"**
对于一个更现实的例子,也许您正在决定销售人员是否有资格获得奖金.您可以获取各种销售数字并在SQL查询中进行一些计算,并返回true / false作为名为“qualifies”的列值.
以前,我会从查询中获取所有销售数据,然后在我的应用程序代码中完成计算.
对我来说,这似乎更好,因为如果有必要,我可以使用调试器逐步完成应用程序逻辑,但无论数据库在做什么,对我来说都是一个黑盒子.但我是初级开发人员,所以我不知道什么是正常的.
让数据库服务器执行一些计算/逻辑有什么优缺点?
**基于Monty Python sketch.的代码示例