美文网首页
Mysql简单语法

Mysql简单语法

作者: 佳音Jakin | 来源:发表于2018-05-09 17:55 被阅读0次

    1、添加列:ALTER  ...ADD   

    单列:ALTER TABLE 表名 ADD 新加列名 属性 [AFTER] 已有列名(可以指定位置)

    添加多列:不能指定位置

    2、删除列:ALTER...DROP...,DROP....

    还可以同时删除同时添加,DROP及ADD

    3、添加主键约束:

    4、删除约束:主键约束、唯一约束、外键约束等,与删除列相似,其中删除主键约束无需列出列名,因主键只有一个,其他删除时需注明列名

    查询数据:

    1、查询数据通用的SELECT语法:

    SELECT column_name1,column_name2  FROM table_name

    可以使用一个或多个表,用逗号分隔,可以读取一条或多条记录,可以使用LIMIL属性设定返回的记录数

    2、使用WHERE子句读取数据:

    SELECT field1, field2 FROM table_name1, table_name2  [WHERE condition1 [AND [OR]] condition2

    WHERE子句中可以指定任何条件,也可运用于DELETE或UPDATE命令

    修改数据:

    update语句使用形式:修改表中的数据

    1、将 id 为 9的手机号改为默认的 - : update students settel=default where id=9

    2、将所有人的年龄增加 1:update students set age=age+1

    3、将手机号为 132880 的姓名改为 "小明", 年龄改为 19: update students set name="小明", age=19 where tel="132880"

    替换某个字段中的某个字符

    UPDATE table_name SET field=REPLACE(field, 'old-string', 'new-string') [WHERE Clause]

    删除数据

    DELETE语句:

    DELETE FROM table_name [WHERE Clause]

    不加where条件时删除表中的所有数据

    LIKE子句

    通常与%使用,类似一个元字符的搜索,可以再DELETE或UPDATE命令中使用WHERE。。。LIKE。。

    '%a' 以a结尾的数据    ‘a%’ 以a开头的数据    ‘%a%’含有a的数据

    '_a_'三位且中间字母是a的    '_a'两位且结尾字母是a   'a_'两位且开头字母是a

    UNION操作符

    用于连接两个以上的SELECT语句的结果组合到一个结果中,多个查询语句会删除重复的数据,检索

    SELECT expression1, expression2, ... expression_n FROM tables[WHERE conditions]

    UNION [ALL | DISTINCT]

    SELECT expression1, expression2, ... expression_n FROM tables[WHERE conditions]

    SELECT要检索的列FROM表[条件]UNION SELETE要检索的列FROM表 条件

    其中ALL代表所有数据,包含重复数据,DISTINCT为默认,删除重复数据,可不加

    ORDER BY 排序

    SELECT field1, field2  table_name1, table_name2 ORDER BY field1, [field2...] [ASC [DESC]]

    ASC与DESC设置结果为升序或降序,默认为升序;可添加WHERE。。LIKE子句设置条件

    GROUP BY 分组

    SELECT column_name, function(column_name) FROM table_name

    WHERE column_name operator value

    GROUP BY column_name

    根据一个或多个列对结果集进行分组,在分组的列上可以使用COUNT,SUM,AVG(function)等函数

    连接的使用:

    两个或多个表中查询数据,JION的使用

    INNER JION(内连接,等值连接):获取两个表中字段匹配关系的记录

    LEFT JION(左连接):获取左表中所有记录,即使右表中没有对应匹配的记录

    RIGHT JION(右连接):获取右表中所有记录,即使左表中没有对应匹配的记录

    SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a INNER JOIN tcount_tbl b ON a.runoob_author = b.runoob_author

    相当于

    SELECT a.runoob_id, a.runoob_author, b.runoob_count FROM runoob_tbl a, tcount_tbl b WHERE a.runoob_author = b.runoob_author

    NULL值的处理:

    IS NULL:

    IS NOT NULL:

    <=>:比较操作符,不同于=运算符,当比较的两个值为NULL时返回true

    注意:不能使用=NULL或!=NULL来查找空值,因NULL与任何值得比较永远返回false,即使NULL=NULL也会是false

    正则表达式:

    ^:匹配字符串的开始位置

    $:匹配字符串的结束位置

    .:匹配除“\n”之外的任何单个字符

    [...]:字符集合,匹配包含的任意一个字符 

    [^...] :负值字符集合,匹配未包含的任意字符  

    p1|p2|p3:匹配p1或p2或p3

     *:匹配前面的子表达式一次或多次  

    +:匹配前面的子表达式一次或多次 

     {n}:n是一个非负整数,匹配确定的n次   

    {n,m}:m和n均为非负整数,其中n<=m,最少匹配n次且最多匹配m次

    ALTER命令:

    当需要修改数据表名或者修改数据表字段时需要使用ALTER命令

    删除列:ALTER TABLE 表名 DROP 列名

    添加列:ALTER TABLE 表名 ADD 列名 属性 [FIRST](AFTER 列名)

    其中FIRST和AFTER只占用ADD子句,如果想重置数据表字段的位置就需要先删除DROP然后再添加ADD并且设置位置

    修改字段类型及名称,使用MODIFY或CHANGE:

    ALTER TABLE testalter_tbl MODIFY 列名 CHAR(10)(此为更改后的数据类型)

    ALTER TABLE testalter_tbl CHANGE 要修改的字段名  新字段名   新数据类型



    相关文章

      网友评论

          本文标题:Mysql简单语法

          本文链接:https://www.haomeiwen.com/subject/faaplftx.html