本文主要是介绍MySQL 日常记录,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
关键词
1、unsigned : 非负数,定义非负,可以在定义主键的自增列时使用。
column_name int UNSIGNED AUTO_INCREMENT
2、desc :降序,从大到小;
asc 或 缺省 :为升序,从小到大,和order by 配合使用。
order by column_name desc
3、union :连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据。
column_name 为列名,table 为表名,[] 为可选条件,where conditions 为检索条件,
all 结果集中包含重复数据,distinct 为默认 结果集中不包含重复数据
select column_name1,column_name2...
from table1
[where conditions]
union [all | distinct]
select column_name1,column_name2...
from table2
[where conditions]
4、is null : 当列的值是 NULL,此运算符返回 true;
is not null :当前列的值不为空,运算符返回true。
select * from table column_name is null;
select * from table column_name is not null;
5、inner join、join :内连接,获取两个表中字段匹配关系的记录;
left join :左连接,获取左表所有记录,即使右表没有对应匹配的记录;
right join :右连接, 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。
select table1.column_name1, teable2.column_name2...
from table1
left join table2 on table1.column_name1= table2.column_name2;
6、between :配合WHERE使用,选取介于value1和value2之间的数据范围,值可以是数值、文本或者日期。
SELECT column_name FROM teable WHERE column_name BETWEEN value1 AND value2;
函数
1、replace(str,from_str,to_str)
把str中的from_str替换为to_str。
from_str 为null时会将str置为null,str不局限于字符型,但是to_str的类型需要和str一致
replace('abcd','b',',') --a,cd
2、substring_index(s, delimiter, number)
返回从字符串 s 的第 number 个出现的分隔符 delimiter 之后的子串。
如果 number 是正数,返回第 number 个字符左边的字符串。
如果 number 是负数,返回第(number 的绝对值(从右边数))个字符右边的字符串。
substring_index('aa*bb' , '*' , 1) --aa
substring_index('aa*bb' , '*' , -1) --bb
3、substr(s, start, length)
从字符串 s 的 start 位置截取长度为 length 的子字符串
从1开始包括start和length []闭合区间
substr('abcd',2,2) --bc
4、trim(s)
去掉字符串 s 开始和结尾处的空格
trim(' qwer ') --qwer
5、position(s1 IN s)
从字符串 s 中获取 s1 的开始位置
从1开始,返回位置包括 s1
position( 'aad' in 'qweraadqwre') --5
6、character_length(str)
返回str的字符数
character_length('asdf') --4
character_length('嘎嘎') --2
7、length(str)
返回str的字节数
utf8编码下,一个汉字3个字节,一个数字或字母1个字节
gbk编码下,一个汉字2个字节,一个数字或字母1个字节
length('哈哈!') --9
length('qwer') --4
这篇关于MySQL 日常记录的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!