前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >字符串按排序和时间戳

字符串按排序和时间戳

作者头像
zucchiniy
发布2020-05-22 12:25:27
9400
发布2020-05-22 12:25:27
举报
文章被收录于专栏:洞明学问洞明学问

排序

自建了一个表,其中的字段为 char 或者 varchar 的类型。

我们如果直接进行的排序的话,得到的序列是字符顺序的,即 1,10,2,20,… ,但是我们希望得到的是 1,2,3,4,… 这种序列,有两种方法可以实现排序。

  • 手动转换
代码语言:javascript
复制
select id from db.sql order by id + 0 desc

但是这种方式显得有点丑,其实 Mysql 提供了一个非常好用的函数进行操作。

  • 使用函数

CAST() 函数和 CONVERT() 可以使用。

代码语言:javascript
复制
select id from db.sql order by CAST(id as SIGNED) desc
代码语言:javascript
复制
select id from db.sql order by CONVERT(id, SIGNED) desc

时间戳

  • 创建新记录和修改现有记录都更新方式
代码语言:javascript
复制
TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
  • 创建的时候设置时间,后续的修改不再更新
代码语言:javascript
复制
TIMESTAMP DEFAULT CURRENT_TIMESTAMP
  • 创建的时候把字段设置为 0 ,以后修改才更新
代码语言:javascript
复制
TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
  • 创建时设置为给定值,以后更新会刷新这个时间
代码语言:javascript
复制
TIMESTAMP DEFAULT 'yyyy-mm-dd hh:mm:ss' ON UPDATE CURRENT_TIMESTAMP
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 排序
  • 时间戳
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档