mysql杂项


  1. 取数据库某个表中的所有的字段
    select COLUMN_NAME from information_schema.COLUMNS where table_name = 'your_table_name' and table_schema = 'your_db_name';
  2. 获取指定数据库的所有数据表
    SELECT  *  FROM information_schema.TABLES WHERE  TABLE_SCHEMA='数据库名'; 
    附网址:http://blog.csdn.net/boshuzhang/article/details/65632708
  3. 数据表三表联合update
    update TF_PSS_Z c, TF_PSS a,TF_CK b
    set c.BC=b.Qty-a.Qty 
    where a.PRD_NO=b.PRD_NO and a.PS_NO=c.PS_NO;
  4. mysql的json数据类型查询方法
    f_json -> '$.name'  = ‘test’  
  5. MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值。两者具体的语法如下:
    CAST(value as type);
    CONVERT(value, type);
    就是CAST(xxx AS 类型), CONVERT(xxx,类型)。
  6. mysql数据更改json某个数据 update t_sub_task set f_json = json_set(f_json,"$.work_hours",FORMAT(f_json->'$.work_hours',2)) where f_task_category_id = 2;
  7. 数据表修复
         use zentao;//zentao是数据库名
     REPAIR TABLE `zt_cron`;//zt_cron是表名
  8. 创建基本索引 ALTER TABLE `表名` ADD INDEX(`字段名`);
  9. 1 表锁 (navicat下)
    2 show OPEN TABLES where In_use > 0; //查看被锁的表
    3 show processlist; //查看使用表的进程
    4 kill 196864; //杀死status不是waiting的进程
  10. 计算天数
    DB::Raw("(CASE WHEN  DATEDIFF(date_format(now(),'%Y-%m-%d'), date_format(f_service_start_time,'%Y-%m-%d')) >= 8 THEN 1 ELSE 0 END) as is_over_date"),
  11. 1 timestamp 类型默认值 :CURRENT_TIMESTAMP