遇到这么一种情况,我有两张表,我要求一个和,但是这个和要根据不同的条件取不同字段,然后求和。当某某情况时,我要取A表里的a字段,当某某情况时,我要考虑B表里是否有满足某条件的数据,如果有我要去取B表的a字段,否则,我要取A表的b字段。
这个问题,当我最开始要解决时,我真的觉得天塌下来了,好复杂,好混乱,逻辑好乱。努力想去推翻需求。当然,我也曾想过解决办法,但是我最开始的想法只有:把A表中满足条件的数据取出来,然后通过关联id去找,看有没有满足条件的数据,然后对应的取出B表的数据,然后去和A表中的对应数据比较,反正就是反复比较,用很多个for循环,最后肯定会有结果。但是始终没有想到用SQL去解决这个问题。
结果问给我布置需求的小哥哥,他真的一条SQL就给我解决了我觉得天大的问题。
后来,我反复想了想我之前功能的逻辑,结果我试了一下,我每一个觉得有点绕弯子的功能都能用一条SQL实现,通过表间的关系,然后关联,通过一些数据库方法做逻辑判断,总会得到想要的结果。可见left join以及数据库的逻辑判断函数是多么的重要啊。
所以说,SQL写好是多么的重要啊!
重点函数(常用),做逻辑判断操作
今天,我工作后接触的第一个项目在上线了!这两个月多一点点,收获,慢慢来吧!好多东西都要学啊,今天根据上线文档,感觉自己对上线的理解又有那么一点点不一样了,感觉真的是要多接触才能有更深入的理解啊!