关于MySQL函数一直想写点东西,让学生能快速的上手。 MySQL内置函数比较多, 让新学习MySQL的同学,一看就吓的不知道怎么开始了,当然也有很多同学非常利害的,一点一点,象背单词那样把整个函数列表背下来了(但过段有可能也忘了),也 表示佩服。在这里我给那些记忆不好的同学,推荐五个使用频率特高别的函数,结合案例看一下。最后奉上知数堂学生: Wing 整理的《知数堂-MySQL内置函数手册》 PDF版本。
开始进入正题:
第一个: substring_index()
用于返回指定字符间隔后的N个字符串,指定数的字符 ,官方例:
mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', 2); -> 'www.mysql' mysql> SELECT SUBSTRING_INDEX('www.mysql.com', '.', -2); -> 'mysql.com'
来一个实际案例,有可能会记的更清楚一点, 例在MySQL统计一下,都有那些IP连到MySQL内部,及每个IP有多个连接
select count(*) , substring_index(host,':',1) as ip , db from information_schema.processlist group by substring_index(host,':',1) ,db;
第二个: concat()
字符拼接函数,看案例:
mysql> select concat('zhishuedu.','com'); -> 'zhishuedu.com'
来看实际案例:把MySQL内部的连接全干掉,让他连接一下DB
>select concat('kill ', id,';') into outfile '/tmp/kthd.sql' from information_schema.processlist where user!='system'; >source /tmp/kthd.sql;
第三个: repeat()
用于生成指定字段串的长度,在做压力测试,生成数据中特别有用,直接看案例
root@localhost [(none)]>select repeat('zhishuedu.com ', 3); +--------------------------------------------+ | repeat('zhishuedu.com ', 3) | +--------------------------------------------+ | zhishuedu.com zhishuedu.com zhishuedu.com | +--------------------------------------------+ 1 row in set (0.00 sec)
第四个: now()
返回当前的时间,直接敲一下:
select now()
字段写入时间,比较有用。 因为简单,就不在运行 这块相应的函数: from_unixtime(), unix_timestamp() 也要关注一下
第五个: length()
返回字符串长度,看案例, 对于有时统计一下字段长度,做一些分析还是挺有帮助
select length('wubx'), char_length('wubx'), length('知数堂'),char_length('知数堂')\G; *************************** 1. row *************************** length('wubx'): 4 char_length('wubx'): 4 length('知数堂'): 9 char_length('知数堂'): 3 1 row in set (0.00 sec)
这块内容还是比较多的,但还是要收尾的,如果闭着眼睛把以前敲过的函数在写一下,还有:
crc32(), floor(), ceil(), pow(), isnull(), strcmp(), ifnull(), char_length(),adddate(), date_format(), date(),year(),current_time(), user(), current_user(),password(), cast()
等等。
大家有兴趣也可以下载一下我们提供的手册来阅读一下,当然这份手册,也是一个初版,还有待完善的地方,本着从0到1的原则,先放出来了。如果你想完善这个,或是有更新,联系我。
以上就是推荐MySQL常用函数+福利的内容,更多相关内容请关注PHP中文网(www.php.cn)!

MySQL触发器是与表相关联的自动执行的存储过程,用于在特定数据操作时执行一系列操作。1)触发器定义与作用:用于数据校验、日志记录等。2)工作原理:分为BEFORE和AFTER,支持行级触发。3)使用示例:可用于记录薪资变更或更新库存。4)调试技巧:使用SHOWTRIGGERS和SHOWCREATETRIGGER命令。5)性能优化:避免复杂操作,使用索引,管理事务。

在MySQL中创建和管理用户账户的步骤如下:1.创建用户:使用CREATEUSER'newuser'@'localhost'IDENTIFIEDBY'password';2.分配权限:使用GRANTSELECT,INSERT,UPDATEONmydatabase.TO'newuser'@'localhost';3.修正权限错误:使用REVOKEALLPRIVILEGESONmydatabase.FROM'newuser'@'localhost';然后重新分配权限;4.优化权限:使用SHOWGRA

MySQL适合快速开发和中小型应用,Oracle适合大型企业和高可用性需求。1)MySQL开源、易用,适用于Web应用和中小型企业。2)Oracle功能强大,适合大型企业和政府机构。3)MySQL支持多种存储引擎,Oracle提供丰富的企业级功能。

MySQL相比其他关系型数据库的劣势包括:1.性能问题:在处理大规模数据时可能遇到瓶颈,PostgreSQL在复杂查询和大数据处理上表现更优。2.扩展性:水平扩展能力不如GoogleSpanner和AmazonAurora。3.功能限制:在高级功能上不如PostgreSQL和Oracle,某些功能需要更多自定义代码和维护。

MySQL支持四种JOIN类型:INNERJOIN、LEFTJOIN、RIGHTJOIN和FULLOUTERJOIN。1.INNERJOIN用于匹配两个表中的行并返回符合条件的结果。2.LEFTJOIN返回左表的所有行,即使右表没有匹配。3.RIGHTJOIN与LEFTJOIN相反,返回右表的所有行。4.FULLOUTERJOIN返回两表中所有符合或不符合条件的行。

MySQL在高负载下的性能与其他RDBMS相比各有优劣。1)MySQL通过InnoDB引擎和优化策略如索引、查询缓存和分区表在高负载下表现良好。2)PostgreSQL通过MVCC机制提供高效并发读写,Oracle和MicrosoftSQLServer则通过各自的优化策略提升性能。通过合理的配置和优化,MySQL可以在高负载环境中表现出色。

InnoDBBufferPool通过缓存数据和索引页来减少磁盘I/O,提升数据库性能。其工作原理包括:1.数据读取:从BufferPool中读取数据;2.数据写入:修改数据后写入BufferPool并定期刷新到磁盘;3.缓存管理:使用LRU算法管理缓存页;4.预读机制:提前加载相邻数据页。通过调整BufferPool大小和使用多个实例,可以优化数据库性能。

MySQL与其他编程语言相比,主要用于存储和管理数据,而其他语言如Python、Java、C 则用于逻辑处理和应用开发。 MySQL以其高性能、可扩展性和跨平台支持着称,适合数据管理需求,而其他语言在各自领域如数据分析、企业应用和系统编程中各有优势。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

Dreamweaver CS6
视觉化网页开发工具