现在人工智能非常火爆,很多朋友都想学,但是一般的教程都是为博硕生准备的,太难看懂了。最近发现了一个非常适合小白入门的教程,不仅通俗易懂而且还很风趣幽默。所以忍不住分享一下给大家。点这里可以跳转到教程。
把多列数据字符串通过某种规则合并为一列输出
比如表test 有列 col1,col2,col3 现在需要把col1,col2中间加上一个标记*
则可以写为 select concat(col1,'*',col2) from test
如果都是数字类型的就会比较简单,直接使用加号即可
比如select col1+col2 from test
表新增主键
alter table table1 add pk_table1 primary key(colname);
pk_table1 这个就是主键的名字
case when
有时候在满足某种条件后显示或执行某些数据。这时候可以使用case when
比如 select case -1>0 then now() else 'test' end
这个就会显示test
还有一个场景就是翻译,比如把1翻译成男 2翻译成女,等等
UUID随机数字获取
mysql获取uuid有两种方式,一种是长的,一种是短的
长的函数名称为UUID(),这个是这种格式的 d48644cc-2c7a-4714-9900-18ab99e80b03
短的函数名称为UUID_SHORT(),这个格式为17位数字,这个是有规律的,每次调用会加1.
获取指定范围的随机整数
SELECT FLOOR(1+RAND()*30) 这个是获取1-30之间的随机整数。
删除大量数据方式
有时候需要删除大量的数据,可以采用编写存储过程,里面编写分页删除方法。
比如 delete * from tabel1 limit 1000
GroupBy之后把列数据集合起来
比如根据名称分组了,但是想把这些数据的所有分数使用逗号分隔集合起来
SELECT student_name, GROUP_CONCAT(DISTINCT test_score ORDER BY test_score DESC SEPARATOR ' ') FROM student GROUP BY student_name;
打印所有请求的sql日志记录
set global general_log=on;
整理碎片
optimize table yourtablename
导入sql文件
进入到mysql的bin目录,
1、输入mysql -u username -p 或者mysql -uusername -ppassword
2、use dbname;//选择dbname这个数据库
3、source yoursql.sql; sql文件最好放在mysql的bin目录下。 遇到过放在其他路径,指定绝对路径,无法导入的问题。
查询表的注释内容
select * from information_schema.tables
查询表字段的注释内容
select * from information_schema.columns