【MySQL】常用SQL

查询某一个数据库内的表名

SELECT table_name
FROM   information_schema.tables
WHERE  table_schema = 'database_name'
   AND table_type = 'base table'
   AND table_name LIKE '%con%';

CASE WHEN

SELECT id,
       ( CASE
           WHEN ( id % 20 < 10 ) THEN Concat('value_2019_0', id % 20)
           ELSE Concat('value_2019_', id % 20)
         end ) AS divid_table_name
FROM   table1;

REPLACE

# 查询
SELECT user_name,
       REPLACE(user_name, 'a', '*')
FROM   user_info;

# 更新
UPDATE user_info
SET    user_name = REPLACE(user_name, 'a', '*');

查询分组后ID最大的那条记录

SELECT t1.id,
       t1.user_code
FROM   user_info AS t1
WHERE  t1.id = (SELECT Max(t2.id)
                FROM   user_info AS t2
                WHERE  t1.user_code = t2.user_code);
               

参考

使用SQL查询所有数据库名和表名

CASE WHEN 及 SELECT CASE WHEN的用法

MySQL中的case when 中对于NULL值判断的坑 - 追风的浪子 - 博客园

mysql的replace函数替换字符串

获取分组后取某字段最大的一条记录(求每个类别中最大的值的列表)

mysql distinct和order by 一起用时,order by的字段必须在select中

Mysql order by 多字段排序

MySQL中自增ID起始值修改方法 - 流柯 - 博客园

mysql limit 分页 - 星朝 - 博客园

mysql 字符串截取 - jentary - 博客园

MySQL UNION 操作符 | 菜鸟教程

Mysql字符串截取总结:left()、right()、substring()、substring_index() - 夏雪冬日 - 博客园

猜你喜欢

转载自blog.csdn.net/yxz8102/article/details/112245037
今日推荐