zoukankan      html  css  js  c++  java
  • 工作常用mysql命令以及函数

    1.表中添加字段ddl

    alter table tb_item_group add column tb_place_id varchar(20) comment'场馆表id';
    alter table 表名 add column 新增字段名 类型 cimment '注释';

     2.修改表字段ddl

    ALTER TABLE tuser CHANGE name user_name varchar(32) DEFAULT NULL COMMENT '姓名';
    #  ALTER TABLE 表名  CHANGE 旧字段名 新字段名 新数据类型;

     3行转列

    数据图

     比如想将uuid >3的role_name转化为一列

    SELECT GROUP_CONCAT(role_name SEPARATOR ',') namex FROM mooc_film_actor_t WHERE UUID>2
    SEPARATOR ',' 值中间加入逗号

      

    4字符串替换函数  REPLACE

    SELECT REPLACE(cat_name,"#",",") cat_name,source_name FROM news WHERE id=10
     

    5 TRIM 函数

    完整格式:TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)

    简化格式:TRIM([remstr FROM] str)

    mysql> SELECT TRIM('  aaa   ');  
         -> 'aaa'  
    
    mysql> SELECT TRIM(LEADING '.' FROM '...aaa...');   //删除指定的首字符 .
         -> 'aaa...' 
    
    mysql> SELECT TRIM(LEADING '.' FROM '..a.aaa...');   //只能删除首字符,第一个a后面的.不能删除
         -> 'a.aaa...'  
    
    mysql> SELECT TRIM(TRAILING '.' FROM 'aaa...');  //删除指定的尾字符 . 
         -> 'aaa'  
    
    mysql> SELECT TRIM(BOTH '.' FROM '...aaa...');     //删除指定的首尾字符 . 
         -> 'bar'  

    6 FIND_IN_SET函数

    CREATE TABLE `tb_test` (
      `id` int(8) NOT NULL auto_increment,
      `name` varchar(255) NOT NULL,
      `list` varchar(255) NOT NULL,
      PRIMARY KEY  (`id`)
    );
    INSERT INTO `tb_test` VALUES (1, 'name', '石头,狮子,椅子');
    INSERT INTO `tb_test` VALUES (2, 'name2', '大石头,狮子,桌子');
    INSERT INTO `tb_test` VALUES (3, 'name3', '白色,黑色,椅子');

    比如,我们想获取 list中有石头的数据

    SELECT id,name,list from tb_test WHERE '石头' IN(list);  --没有数据

    用like查询 ,发现【大石头】的这列也查了出来,但是我们只想要石头

    SELECT id,name,list from tb_test WHERE list like '%石头%';

     用FIND_IN_SET 函数 ,就查出来了

    SELECT id,name,list from tb_test WHERE FIND_IN_SET('石头',list);

     mysql中 like和find_in_set区别:

    mysql字符串函数 find_in_set(str1,str2)函数是返回str2中str1所在的位置索引,str2必须以","分割开。

    like是广泛的模糊匹配,字符串中没有分隔符,Find_IN_SET 是精确匹配,字段值以英文”,”分隔,Find_IN_SET查询的结果要小于like查询的结果。

     

  • 相关阅读:
    仿造email后缀自动添加功能(1)
    仿造email后缀搜索功能(2)
    取出input内的空格
    小知识点
    关于闭包
    js清除浏览器缓存的几种方法
    动态生成模板(模板生成器)
    安卓端调用h5界面js方法和ios端调用h5界面js方法
    linux 命令
    如何做个好员工
  • 原文地址:https://www.cnblogs.com/1439107348s/p/14557277.html
Copyright © 2011-2022 走看看