想问个sql问题,该怎么写,有大佬吗
下面是举例的表
id name time1 time2 time3
我这边的需求是time2 - time1 时间大于2天前端要标记个红色,time3-time1大于1天标记黄色
前端页面有个筛选框筛选未标记颜色的数据或已标记颜色的数据(红色和黄色在一行数据中可能会同时出现或者单独出现)
这个or语句应该怎么写啊
高认可度评论:
数据库应当是且只是数据的
仓库
,任何的业务逻辑在非必须情况下都不应当放在数据层。模型定义 访问器 就可以解决问题。
模型里面搞个访问器就行了
数据库应当是且只是数据的
仓库
,任何的业务逻辑在非必须情况下都不应当放在数据层。模型定义 访问器 就可以解决问题。
多加两个字段不就行了,每次更新
time1
或time2
,都用程序比较两个值,存放到单独的字段比如time1_time2
里面,何必每次查询都去在查询语句里面time1 - time2
放客户端去做这个吧,不要把视图层的显示业务强行挪到数据库去处理。但是单方面问这个 SQL 怎么写,当我没有说。
只是判断颜色的话,在php中判断好一些吧
是的,单纯的sql怎么写,那就算了;但是实际项目中不建议,数据库更多的是简单的查询,业务逻辑交给语言层
这些算式建议放到前端的,字段返回给前端就行了,毕竟以后改前端比改后端容易
除了数据交互需要用后台来算,我一般都是前端用JS来算这些东西,避免后端压力
数据多了这种数据库计算不可行吧?还是要加冗余字段才行,最好不要计算吧,数据库查是必须的,因为涉及过滤和分页
在PHP里处理吧,这种还是不建议在SQL语句中处理