MySQL常用语句

1、连接服务器
    mysql -h localhost -u root -p

2、显示已有数据库
    show databases db_name

3、选用数据库
    use db_name

4、显示数据表信息
    SHOW TABLES [FROM db_name] [LIKE wild]
    or SHOW COLUMNS FROM tbl_name [FROM db_name] [LIKE wild]
    or SHOW INDEX FROM tbl_name [FROM db_name]
    or SHOW TABLE STATUS [FROM db_name] [LIKE wild]

5、select语句
    SELECT selection_list 选择哪些列
    FROM table_list 从何处选择行
    WHERE primary_constraint 行必须满足什么条件
    GROUP BY grouping_columns 怎样对结果分组
    HAVING secondary_constraint 行必须满足的第二条件
    ORDER BY sorting_columns 怎样对结果排序
    LIMIT count 结果限定

    注意:所有使用的关键词必须精确地以上面的顺序给出。例如,一个HAVING 子句必须跟在GROUP BY子句之后和ORDER BY子句之前。

6、使用关系运算符和逻辑运算符来限制时间范围
    select * from payment where creatdatetime >="2015-06-10" and creatdatetime < "2015-06-11";
   
   使用LIKE,包含通配符%
    select * from payment where creatdatetime like "2015-06-10%";

7、比较时间和日期
    to_days(date)
    select to_days(now())-to_days('20010101');//两个时间相差的天数

8、正则表达式匹配
   (regexp或not regexp)或者(rlike 或 not rlike)
   规则:
    “.”匹配任何单个的字符。
    一个字符类“[...]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。
    为了命名字符的一个范围,使用一个“-”。“[a-z]”匹配任何小写字母,而“[0-9]”匹配任何数字。
    
    “ * ”匹配零个或多个在它前面的东西。
    例如,“x*”匹配任何数量的“x”字符,“[0-9]*”匹配的任何数量的数字,而“.*”匹配任何数量的任何东西。

    正则表达式是区分大小写的。
    但是如果你希望,你能使用一个字符类匹配两种写法。例如,“[aA]”匹配小写或大写的“a”而“[a-zA-Z]”匹配两种写法的任何字母。
    
    为了定位一个模式以便它必须匹配被测试值的开始或结尾,在模式开始处使用“^”或在模式的结尾用“$”。

    为了找出包含正好5个字符的名字,使用“^”和“$”匹配名字的开始和结尾,和5个“.”实例在两者之间:
    SELECT * FROM pet WHERE name REGEXP "^.....$";
    你也可以使用“{n}”“重复n次”操作符重写先前的查询:
    SELECT * FROM pet WHERE name REGEXP "^.{5}$";

9、大小写敏感
    如果你想要一个列总是被当作大小写敏感的方式,声明它为BINARY。
    例如:
    SELECT "E"="e","E"=BINARY "e";

10、全连接与左连接
    全连接:在检索时指定多个表,将每个表用都好分隔,这样每个表的数据行都和其他表的每行交叉产生所有可能的组合,这样就是一个全连接。

    左连接:全连接给出FROM子句中所有表都有匹配的行。对于左连接,不仅匹配类似前面的行记录,而且还显示左边的表有而右边的表中无匹配的行。

    对 于这样的行,从右边表选择的列均被显示为NULL。这样,每一匹配的行都从左边的表被选出,而如果右边表有一个匹配的行,则被选中,如果不匹配,    行仍然被选中,

    不过,其中右边相应的列在结果集中均设为NULL。即,LEFT JOIN强制包含左边表的每一行,而不管右边表是否匹配。

    语法:SELECT FROM table_reference LEFT JOIN table_reference ON conditional_expr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值