[MySQL] 常用SQL技巧--18.5
1.正则表达式使用
MySQl利用REGEXP命令,提供正则表达式功能。
例子:select 'abcdef' REGEXP '^a';
select 'efg' REGEXP '[^XYZ]';
2. 用RAND()函数提取随机行
使用RAND()函数从表中随机抽取记录行,这对一些抽样分析统计非常有用。
例如:select * from category order by rand() limit 5;
3. 利用group by的with rollup子句做统计报表
在SQL语句中,使用group by的with rollup子句可以检索出更多的分组聚和信息;方便做报表。
4. 数据库名、表名大小写的问题
在MySQL中,数据库对应操作系统下的数据目录。数据库中的每个表至少对应数据库目录中的一个文件(也可能是多个,取决于
存储引擎)。因此,操作系统大小写敏感性决定了数据库名和表名对大小写的敏感性(触发器和表别名也敏感)。
大多数Unix操作系统对大小写敏感,区分大小写;而在Windows中,对大小写不敏感,不区分大小写。
列、索引、存储过程(不包括触发器)在任何平台上对大小写都不敏感。
建议将库名,表名,触发器名,别名统统写成小写,并在参数中设置lower_case_tables_name=1;
Use lower_case_table_names=1
on all systems. The main disadvantage with this is that when you use SHOW TABLES
or SHOW DATABASES
, you do not see the names in their original lettercase.
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步