zoukankan      html  css  js  c++  java
  • MySql

    1.length:计算字段的长度。一个汉字-->3个字符,一个数字或字母-->1个字符

      select length(username) from user;

      select * from user where length(username)>6;

    2.UNIX_TIMESTAMP:将时间转化为时间戳。date类型转化为timestamp整数(秒数)。

       FROM_UNIXTIME:将timestamp 形式整数 转化为 date类型。

      select UNIX_TIMESTAMP(ifnull(hangup_time; create_time)) - UNIX_TIMESTAMP(dial_time) from call_log;

      select from_unixtime(1355272360);

    PS:

    目前timestamp 所能表示的范围在 1970  -  2038之间 。超过这个范围 得到的时间将会溢出 得到的时间是null。

    select from_unixtime(0);   >>>  1970-01-01 08:00:00

    select from_unixtime(2147483647);  >>>   2038-01-19 11:14:07

    select UNIX_TIMESTAMP('2038-01-19 11:14:08')   >>>   0

    3.select for update

      在SELECT 的读取锁定主要分为两种方式:

      SELECT ... LOCK IN SHARE MODE

      SELECT ... FOR UPDATE

      这两种方式在事务(Transaction) 进行当中SELECT 到同一个数据表时,都必须等待其它事务数据被提交(Commit)后才会执行。而主要的不同在于LOCK IN SHARE MODE 在有一方事务要Update 同一个表单时很容易造成死锁 。

      

    4.判断语句

      select if(sex=1,'男','女') as 性别 from User where id=1

      select CASE 

        WHEN platform=1 THEN '平台1'

        WHEN platform=2 THEN '平台2'

        ELSE '非平台' END

      select CASE platform

        WHEN 1 THEN '平台1'

        WHEN 2 THEN '平台2'

        ELSE '非平台' END

      SELECT CASE WHEN 1>0 THEN 'true' ELSE 'false' END

    IFNULL(expr1,expr2) 
    假如expr1 不为 NULL,则 IFNULL() 的返回值为 expr1; 否则其返回值为 expr2。IFNULL()的返回值是数字或是字符串

    IFNULL(expr1,expr2)的默认结果值为两个表达式中更加“通用”的一个,顺序为STRING、 REAL或 INTEGER。

  • 相关阅读:
    flutter 日常所记
    flutter 项目打包出错问题
    flutter去除白屏,添加启动图
    flutter快捷键总结
    flutter组件总结
    首次使用flutter
    微信小程序引入坐标反解析
    公众号H5引入微信地图组件的正确姿势
    小程序获取unionid的方法
    对比两个文件夹或者文件的差异
  • 原文地址:https://www.cnblogs.com/huanhailanyu/p/7057862.html
Copyright © 2011-2022 走看看