sql 排序按修改时间,诺修改时间为空与创建时间比较

SELECT id,updated_time,created_time

FROM table

ORDER BY

CASE

WHEN IFNULL(updated_time,‘‘)=‘‘

THEN created_time

ELSE updated_time

END

DESC, created_time DESC;

MYSQL IFNULL函数的使用

MYSQL  IFNULL(expr1,expr2)          
        如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2。

IFNULL()返回一个数字或字符串值,取决于它被使用的上下文环境。          
mysql> select IFNULL(1,0);       -> 1      
mysql> select IFNULL(0,10);       -> 0      
mysql> select IFNULL(1/0,10);       -> 10      
mysql> select IFNULL(1/0,yes);       -> yes

时间: 2024-10-25 10:21:24

sql 排序按修改时间,诺修改时间为空与创建时间比较的相关文章

修改SQL Server数据库表的创建时间最简单最直接有效的方法

说明:这篇文章是几年前我发布在网易博客当中的原创文章,但由于网易博客现在要停止运营了,所以我就把这篇文章搬了过来,因为这种操作方式是通用的,即使是对现在最新的SQL Server数据库里面的操作也是一样的,相信很多朋友都会使用到. ----------------------分割线-------------------- 网络上曾经有很多人询问怎么修改SQL Server数据库表的创建时间,但得到的回答多种多样,有的说需要使用某些软件进行修改,有的说需要修改注册表等等,其实这些方法实施起来不但麻

Linux下文件的三种时间标记:访问时间、修改时间、状态改动时间 (转载)

在windows下,一个文件有:创建时间.修改时间.访问时间. 而在Linux下,一个文件也有三种时间,分别是:访问时间.修改时间.状态改动时间. 两者有此不同,在Linux下没有创建时间的概念,也就是不能知道文件的建立时间,但如果文件建立后就没有修改过,修改时间=建立时间;如果文件建立后, 状态就没有改动过,那么状态改动时间=建立时间;如果文件建立后,没有被读取过,那么访问时间=建立时间,因为不好判断文件是否被改过.读过.其状态是否 变过,所以判断文件的建立时间基本上能为不可能. 如何查一个文

【转载】在Linux下,一个文件也有三种时间,分别是:访问时间、修改时间、状态改动时间

在windows下,一个文件有:创建时间.修改时间.访问时间.而在Linux下,一个文件也有三种时间,分别是:访问时间.修改时间.状态改动时间. 两者有此不同,在Linux下没有创建时间的概念,也就是不能知道文件的建立时间,但如果文件建立后就没有修改过,修改时间=建立时间;如果文件建立后,状态就没有改动过,那么状态改动时间=建立时间;如果文件建立后,没有被读取过,那么访问时间=建立时间,因为不好判断文件是否被改过.读过.其状态是否变过,所以判断文件的建立时间基本上能为不可能. 如何查一个文件的三

PostgreSQL 从文件时间戳获悉一些信息(如数据库创建时间)

背景 PG的一些元数据没有时间字段,例如对象的创建时间.DDL的修改时间. 如果要获得这个时间信息,我们可以 1.通过事件触发器,将DDL事件记录到某个元数据表中,来获得. 2.或者打开DDL审计日志,从审计日志中获得. 3.与事件触发器类似,不过是通过PG的HOOK来实现的,在执行DDL时,通过代码中对应的HOOK来跟踪记录DDL的时间. 还有没有其他方法呢? 人民群众的智慧是无限的,我收集了一个方法,来自PGer(智宏): 通过查看文件的创建时间,获得一些信息 例如数据库的创建时间. 在创建

iOS文档排序按修改/创建时间遍历文件夹

NSFileManager中的attributesOfItemAtPath:方法可以获取沙盒内的文件信息,其中就有NSFileCreationDate和NSFileModificationDate两个属性分别代表文件创建时间和修改时间,我们可以比较两个文件的这两个属性,实现按时间排序. 常用的两种排序方法有sortedArrayUsingSelector:和sortedArrayUsingComparator:,这里使用后一种方法. 代码如下. NSFileManager *fileMgr =

mysql 添加时间列(用于记录创建时间和修改时间)

在mysql建表的时候需要添加两个时间列,分别记录当前记录的创建时间和修改时间. 好. 下面是建表语句: [sql] view plain copy DROP TABLE IF EXISTS `mytesttable`; CREATE TABLE `mytesttable` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, `createtime` datetime DEFAULT CURRENT_TIMESTAMP, `upd

文件按修改时间和创建时间遍历

NSFileCreationDate和NSFileModificationDate两个属性分别代表文件创建时间和修改时间 NSArray *sortedPaths = [array sortedArrayUsingComparator:^(NSString * firstPath, NSString* secondPath) { NSString *firstUrl = [docPath stringByAppendingPathComponent:firstPath];//获取前一个文件完整路

Web 在线文件管理器学习笔记与总结(2)显示文件列表(名称,类型,大小,可读,可写,可执行,创建时间,修改时间,访问时间)

主要函数: filetype() 判断文件类型 filesize() 得到文件大小(字节) is_readable() 判断文件是否可读 is_writeable() 判断文件是否可写 is_executable() 判断文件是否可执行 filectime() 文件创建时间 filemtime() 文件修改时间 fileatime() 文件访问时间 file.func.php 封装文件操作的文件: <?php /* 转换字节大小 */ function transByte($size){ $ar

Windows服务器时间不断修改(时间不同步已解决)

一台域内的服务器时间不停地被修改,我先向用户收集了一些信息 只有这一台出现此问题,其他服务器均为正常 系统版本\服务器用途(考虑是否有软件会造成此问题)\日志信息\是否为虚拟机 1.系统版本是Server 2008 数据中心版 2.用途就是一台做图的服务器 3.日志信息如下图,这个日志是系统日志,事件ID为1,时间从2016-7-21 00:50:59 被改为 2016-07-21 08:32:31 4.是Vmware虚拟机 = = 第一天 1)确定服务器的时间服务是否为正常启动 2)查看虚拟机