bitsCN.com
一、String Functions
String functions is one of the most commonly used for Mysql.
(1):concat(s1,s2,..Sn)
连接s1,s2,...sn为一个字符串。如:
<code>SELECT CONCAT('|',2,'*','&'); #|2*&SELECT concat(50,'%'); #50%SELECT concat('abc',null) #Null</code>
(2):insert(str,x,y,instr)
将字符串str从第x位置开始,y个字符长的子串替换为字符串instr
<code>SELECT INSERT('I love Jack',8,4,'Lada'); #start 1</code>
(3):lower(str)
、upper(str)
大小写转换
(4):left(str,x)
、right(str,x)
分别返回字符串最左边的x个字符和最右边的x个字符,如果第二个参数的null
则不返回任何字符串。
<code>SELECT left('My name is',2); #MySELECT right('My name is',2); #isSELECT left('Jack',NULL); #Null</code>
(5):lpad(str,n,pad)
、rpad(str,n,pad)
用于字符串pad对str最左边和最右边进行填充,直到长度为n个字符长度。
<code>SELECT lpad('hi',5,'?') #???hiSELECT rpad('hi',10,'Jack') #hiJackJack</code>
(6):ltrim(str)
、rtrim(str)
去掉字符串str左侧和右侧的空格。
<code>SELECT ltrim(' hi'); #hiSELECT rtrim('hi '); #hi</code>
(7):repeat(str,x)
返回str重复x次的结果
<code>SELECT repeat('*',10) #**********</code>
(8):replace(str,a,b)
用字符串b替换str的所有出现的字符串a
<code>SELECT replace('L love Jan','J','B'); #L love Ban</code>
(9):strcmp(str1,str2)
比较字符串str1和str2的ASCII码值大小
<code>SELECT strcmp('A','a'),strcmp('a','a') # 0 0</code>
(10):trim(str)
去掉字符串str首尾空格
(11):substring(str,x,y)
返回从字符串str中第x位置其y个字符长度的子串。
<code>SELECT substring('good',2,4) #ood,位置[x,y]</code>
二、数值函数
(1):abs(x)
:返回x的绝对值
(2):ceil(x)
:返回大于x的最小整数值
<code>SELECT ceil(-0.8),ceil(0.8) #0 1</code>
(3):floor(x)
返回小于x的最大整数值
<code>SELECT floor(-0.8),floor(0.8) #-1 0</code>
(4):mod(x,y)
返回x/y的模
<code>SELECT mod(5,3) #2</code>
(5):rand()
:返回0~1之间的随机数
SELECT rand(),round(10*rand(),2)
#0.87565597228301
#1.47
(6):round(x,y)
返回参数x的四舍五入的有y位小数的值
(7):truncate(x,y)
返回数字x截断y位小数的结果
<code>SELECT truncate(rand(),3) #0.109</code>
三、日期和时间函数
(1):curdate()
、curtime()
、now()
:返回当前日期、当前时间、当前日期时间
<code>SELECT curdate() #2013-10-23SELECT curtime() #13:37:04SELECT now() #2013-10-23 13:37:18</code>
(2):week(date)
:返回日期date为一年中的第几周
<code>SELECT week(now()) #42</code>
(3):year(date)
、hour(time)
、minute(time)
、second(time)
返回当前年份、小时、分钟、秒
<code>SELECT year(now()) #2013SELECT hour(now()) #13SELECT minute(now()) #53SELECT second(now()) #24</code>
(4):monthname(date)
返回月份名
<code>SELECT monthname(now()) #October</code>
(5):date_format(date,fmt)
:按字符串fmt格式化日期date值,此函数能够按指定日期显示
<code>SELECT date_format(now(),'%y-%m-%d %H:%I:%s') </code>
%S, %s 两位数字形式的秒( 00,01, ..., 59)
%I, %i 两位数字形式的分( 00,01, ..., 59)
%H 两位数字形式的小时,24 小时(00,01, ..., 23)
%h 两位数字形式的小时,12 小时(01,02, ..., 12)
%k 数字形式的小时,24 小时(0,1, ..., 23)
%l 数字形式的小时,12 小时(1, 2, ..., 12)
%T 24 小时的时间形式(hh:mm:ss)
%r 12 小时的时间形式(hh:mm:ss AM 或hh:mm:ss PM)
%p AM或PM
%W 一周中每一天的名称(Sunday, Monday, ..., Saturday)
%a 一周中每一天名称的缩写(Sun, Mon, ..., Sat)
%d 两位数字表示月中的天数(00, 01,..., 31)
%e 数字形式表示月中的天数(1, 2, ..., 31)
%D 英文后缀表示月中的天数(1st, 2nd, 3rd,...)
%w 以数字形式表示周中的天数( 0 = Sunday, 1=Monday, ..., 6=Saturday)
%j 以三位数字表示年中的天数( 001, 002, ..., 366)
%U 周(0, 1, 52),其中Sunday 为周中的第一天
%u 周(0, 1, 52),其中Monday 为周中的第一天
%M 月名(January, February, ..., December)
%b 缩写的月名( January, February,...., December)
%m 两位数字表示的月份(01, 02, ..., 12)
%c 数字表示的月份(1, 2, ...., 12)
%Y 四位数字表示的年份
%y 两位数字表示的年份
%% 直接值“%”
(6):datediff(date1,date2)
计算两个日期之间相差的天数
<code>SELECT datediff('2015-8-8',now()) #654</code>
四、流程控制
(1):if(value,t,f)
如果value为真,返回t,否则返回f
<code>mysql> SELECT if(salary>1500,'高','低') FROM salary;+---------------------------+| if(salary>1500,'高','低') |+---------------------------+| 低|| 低|| 高|| 高|+---------------------------+4 rows in set</code>
(2):ifnull(value1,value2)
如果value1不为空返回value1,否则返回value2。这个函数一般用来替换Null的值。
<code>mysql> select ifnull(salary,0) from salary;+------------------+| ifnull(salary,0) |+------------------+| 1000 || 1500 || 2000 || 2500 ||0 |+------------------+5 rows in set</code>
(3):case when [value1] then [result1] ..else[default] end
如果value1为真,返回result1,否则返回default
<code>mysql> select case when salary>1500 then '高' else '低' end from salary;+-----------------------------------------------+| case when salary>1500 then '高' else '低' end |+-----------------------------------------------+| 低|| 低|| 高|| 高|| 低|+-----------------------------------------------+5 rows in set</code>
(4):case [expr] when [value1] then [result1] ..else[default] end
如果expr等于value1,返回result1,否则返回default
<code>mysql> select case salary when 1000 then '低' when 2000 then '中' else '高' end from salary;+-------------------------------------------------------------------+| case salary when 1000 then '低' when 2000 then '中' else '高' end |+-------------------------------------------------------------------+| 低|| 高|| 中|| 高|| 高|+-------------------------------------------------------------------+5 rows in set</code>
小技巧:
<code>mysql> select case when instr(type,'上季') then 1 when instr(type,'下季') then 2 else 3 end from salary;+-------------------------------------------------------------------------------+| case when instr(type,'上季') then 1 when instr(type,'下季') then 2 else 3 end |+-------------------------------------------------------------------------------+| 1 || 1 || 2 || 3 || 1 |+-------------------------------------------------------------------------------+5 rows in set</code>
五、其他函数
(1):database()
:返回当前数据库名
(2):version()
:返回当前数据库版本
(3):user()
:返回当前登录用户名
其他参考文档。
参考:《深入浅出mysql》

php将16进制字符串转为数字的方法:1、使用hexdec()函数,语法“hexdec(十六进制字符串)”;2、使用base_convert()函数,语法“bindec(十六进制字符串, 16, 10)”。

PHP 是一门功能强大的编程语言,广泛应用于 Web 开发领域。其中一个非常常见的情况是需要将字符串转换为小数。这在进行数据处理的时候非常有用。在本文中,我们将介绍如何在 PHP 中将字符串转换为小数。

检测变量是否为字符串的方法:1、利用“%T”格式化标识,语法“fmt.Printf("variable count=%v is of type %T \n", count, count)”;2、利用reflect.TypeOf(),语法“reflect.TypeOf(变量)”;3、利用reflect.ValueOf().Kind()检测;4、使用类型断言,可以对类型进行分组。

转换方法:1、在转换变量前加上用括号括起来的目标类型“(bool)”或“(boolean)”;2、用boolval()函数,语法“boolval(字符串)”;3、用settype()函数,语法“settype(变量,"boolean")”。

删除方法:1、使用TrimSpace()函数去除字符串左右两边的空格,语法“strings.TrimSpace(str)”;2、使用Trim()函数去除字符串左右两边的空格,语法“strings.Trim(str, " ")”;3、使用Replace()函数去除字符串的全部空格,语法“strings.Replace(str, " ", "", -1)”。

在开发PHP应用程序时,有时我们需要去掉字符串前面的某些特定字符或者字符串。在这种情况下,我们需要使用一些PHP函数来实现这一目标。本文将介绍一些PHP函数,帮助您轻松地去掉字符串前面的字符或字符串。

php字符串长度不一致的解决办法:1、通过mb_detect_encoding()函数查看字符串的编码方式;2、通过mb_strlen函数查看具体字符长度;3、使用正则表达式“preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str1, $matches);”剔除非中文字符即可。

php字符串部分乱码的解决办法:1、使用“mb_substr(strip_tags($str),0,-1,'UTF-8');”截取字符串;2、使用“iconv("UTF-8","GB2312//IGNORE",$data)”转换字符集即可。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

Dreamweaver Mac版
ビジュアル Web 開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

メモ帳++7.3.1
使いやすく無料のコードエディター

ホットトピック



