Mysql研究之MySQL常用内置函数完全解析_MySQL
说明:
1)可以用在SELECT/UPDATE/DELETE中,及where,orderby,having中
2)在函数里将字段名作为参数,变量的值就是字段所对应的每一行的值。
3)在程序设计语言如C++中提供的函数,MySQL大部分也提供了,关于MySQL函数的完整信息,请参阅《MySQL参考手册》
一、字符串函数【比较常用,需要掌握】
1、 concat(s1,s2,…,sn) #把传入的参数连接成一个字符串
selectconcat(‘abc’,’def’);
selectconcat(name,’ age is ‘,age) from users;
2、insert(str,m,n,inser_str) #将str的从m位置开始的n个字符替换为inser_str
selectinsert(‘abcdef’,2,3,’123456′);
selectinsert(name,3,2,’HAHA’) from users;
selectinsert(name,2,2,’00′) from users;
3、lower(str)/upper(str) #将字符串str转换成小写/大写
selectlower(‘HELLO’),upper(‘hello’);
selectlower(‘HELLO’) as ‘HELLO’,upper(‘hello’)as ‘HELLO’;
select* from users where upper(name) = ‘AAA’;
4、left(str,n)/right(str,n) #分别返回str最左边/最右边的n个字符,如果n NULL 则任何东西不返回
selectleft(’123′,3),right(’123456′,3),left(’123′,NULL);
5、lpad(str,n,pad)/rpad(str,n,pad) #用字符串pad对str的最左边/最右边进行填充,知道满足str含有n个字符为止
selectname,lpad(name,10,’#’),rpad(name,10,’@’) from users;
6、trim(str)/ltrim(str)/rtrim(str) #去除字符串str左右空格/左空格/右空格
selectconcat(‘#’,trim(” abc “),’#’),concat(‘#’,ltrim(‘ abc ‘),’#’),concat(‘#’,rtrim(‘ abc ‘),’#’);
7、replace(str,sear_str,sub_str) #将字符串str中所有出现的sear_str字符串替换为sub_str
select replace(‘abcdefgabcd’,’cd’,’XXX’) ;
8、strcmp(str1,str2) #以ASCII码比较字符串str1,str2,返回-1(str1 str2)
selectstrcmp(‘aa’,’bb’),strcmp(‘aa’,’aa’),strcmp(‘bb’,’aa’);
9、substring(str,n,m) #返回字符串str中从n起,m个字符长度的字符串
selectsubstring(‘abcdef’,2,3);
selectname,substring(name,1,2) as subname from users;
二、数值函数
1、abs(x) #返回x的绝对值
selectabs(10),abs(-10);
selectabs(age) from users;
2、ceil(x) #返回大于x的最小整数
3、floor(x) #返回小于x的最大整数
selectceil(2.1),ceil(2.5),ceil(2.9),floor(2.1),floor(2.5),floor(2.9)
4、mod(x,y) #返回x/y的模,与x%y作用相同
selectmod(null,11);
游戏编程网www.cgzhw.com有详细的说明,这里就不再重复了。
三、日期函数
1、curdate() #返回当前日期
2、curtime() #返回当前时间
selectcurdate(),curtime();
3、now() #返回当前日期+时间
selectnow();
4、unix_timestamp(now())#返回unix当前时间的时间戳
selectunix_timestamp(now()); #从计算机元年(1971-1-100:00:00)到现在的秒数
5、from_unixtime() #将时间戳(整数)转换为“日期+时间(xx-xx-xxxx:xx:xx)”的形式
selectfrom_unixtime(1392853616);
6、week(now()) #返回当前时间是第几周
7、year(now()) #返回当前是XX年
8、hour(now())/hour(curtime()) #返回当前时间的小时数
9、minute(curtime()) #返回当期的分钟数
…
selectweek(now()),year(now()),hour(now());
selectweek(from_unixtime(1392853616)); #返回unix时间戳中的周期数
10、monthname(now())/monthname(curdate()) #返回当前月的英文名
11、date_format(now(),”%Y-%M-%D%H:%I%S”) #将当期时间格式化
selectdate_format(now(),”%Y-%m-%d %H:%i%s”);
selectdate_format(now(),”%y%m%d %H:%i%s”);
四、流程控制函数
1、if(value,true,false) #如果value值为真,则返回true,否则,返回false
selectif (salary > 3000,’Hight’,’Low’) from salary;
selectid,salary, if (salary NULL,’NULL’,’NOT NULL’) from salary;
2、ifnull(value1,value2)#如果value1不为空,则返回value1,不然返回value2
#可以用来进行空值替换
selectifnull(salary,0.00) from salary;
3、casewhen [value] then … else …end #如果value值为真,执行then之后的语句,不然执行eles后的语句,不要忘记end!
selectcase when salary
五、其他函数
1、database() #当前数据库
2、version() #当前数据库版本
3、user() #当前登录用户
selectdatabase();
4、inet_aton(ip) #ip地址的网络字节顺序
selectinet_aton(’192.168.139.1′);
5、inet_ntoa #返回数字所代表的ip
selectinet_ntoa(3232271105);
6、password(str) #返回加密的str字符串
selectpassword(“123456″); #返回一个41位长的加密字符串,只是用于给MySQL系统用户进行加密
7、md5() #在应用程序中进行数据加密,比如在C++程序中
selectmd5(“123456”);

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Bahasa Go menyediakan dua teknologi penciptaan fungsi dinamik: penutupan dan refleksi. penutupan membenarkan akses kepada pembolehubah dalam skop penutupan, dan refleksi boleh mencipta fungsi baharu menggunakan fungsi FuncOf. Teknologi ini berguna dalam menyesuaikan penghala HTTP, melaksanakan sistem yang sangat boleh disesuaikan dan membina komponen boleh pasang.

Dalam penamaan fungsi C++, adalah penting untuk mempertimbangkan susunan parameter untuk meningkatkan kebolehbacaan, mengurangkan ralat dan memudahkan pemfaktoran semula. Konvensyen susunan parameter biasa termasuk: tindakan-objek, objek-tindakan, makna semantik dan pematuhan perpustakaan standard. Susunan optimum bergantung pada tujuan fungsi, jenis parameter, kemungkinan kekeliruan dan konvensyen bahasa.

Kunci untuk menulis fungsi Java yang cekap dan boleh diselenggara ialah: pastikan ia mudah. Gunakan penamaan yang bermakna. Mengendalikan situasi khas. Gunakan keterlihatan yang sesuai.

1. Fungsi SUM digunakan untuk menjumlahkan nombor dalam lajur atau sekumpulan sel, contohnya: =SUM(A1:J10). 2. Fungsi AVERAGE digunakan untuk mengira purata nombor dalam lajur atau sekumpulan sel, contohnya: =AVERAGE(A1:A10). 3. Fungsi COUNT, digunakan untuk mengira bilangan nombor atau teks dalam lajur atau sekumpulan sel, contohnya: =COUNT(A1:A10) 4. Fungsi IF, digunakan untuk membuat pertimbangan logik berdasarkan syarat yang ditentukan dan mengembalikan hasil yang sepadan.

Kelebihan parameter lalai dalam fungsi C++ termasuk memudahkan panggilan, meningkatkan kebolehbacaan dan mengelakkan ralat. Kelemahannya ialah fleksibiliti terhad dan sekatan penamaan. Kelebihan parameter variadic termasuk fleksibiliti tanpa had dan pengikatan dinamik. Kelemahan termasuk kerumitan yang lebih besar, penukaran jenis tersirat dan kesukaran dalam penyahpepijatan.

Faedah fungsi mengembalikan jenis rujukan dalam C++ termasuk: Peningkatan prestasi: Melewati rujukan mengelakkan penyalinan objek, sekali gus menjimatkan memori dan masa. Pengubahsuaian langsung: Pemanggil boleh mengubah suai secara langsung objek rujukan yang dikembalikan tanpa menugaskannya semula. Kesederhanaan kod: Lulus melalui rujukan memudahkan kod dan tidak memerlukan operasi penugasan tambahan.

Pengendalian pengecualian dalam C++ boleh dipertingkatkan melalui kelas pengecualian tersuai yang menyediakan mesej ralat khusus, maklumat kontekstual dan melaksanakan tindakan tersuai berdasarkan jenis ralat. Tentukan kelas pengecualian yang diwarisi daripada std::exception untuk memberikan maklumat ralat tertentu. Gunakan kata kunci lontaran untuk membuang pengecualian tersuai. Gunakan dynamic_cast dalam blok try-catch untuk menukar pengecualian yang ditangkap kepada jenis pengecualian tersuai. Dalam kes sebenar, fungsi open_file membuang pengecualian FileNotFoundException Menangkap dan mengendalikan pengecualian boleh memberikan mesej ralat yang lebih spesifik.

Perbezaan antara fungsi PHP tersuai dan fungsi yang dipratentukan ialah: Skop: Fungsi tersuai terhad kepada skop definisinya, manakala fungsi yang dipratentukan boleh diakses di seluruh skrip. Cara mentakrifkan: Fungsi tersuai ditakrifkan menggunakan kata kunci fungsi, manakala fungsi yang dipratakrifkan ditakrifkan oleh kernel PHP. Lulus parameter: Fungsi tersuai menerima parameter, manakala fungsi yang dipratentukan mungkin tidak memerlukan parameter. Kebolehlanjutan: Fungsi tersuai boleh dibuat mengikut keperluan, manakala fungsi yang dipratentukan terbina dalam dan tidak boleh diubah suai.
