常见命令

  • 查看数据库版本:**select vesion();****mysql --version**(cmd)
  • 显示所有数据库:**show databases;**
  • 进入指定数据库并显示所有表:**use 库名;**``**show tables;**
  • 显示其他数据库的所有表:**show tables from 库名;**
  • 查看当前所在库:**show database();**
  • 查看表的列名及其属性:**show columns from 表名**
  • 创建一个表:**create table s(id int, name varchar(20));**
  • 查看tmpdir变量:show variables like '%tmpdir%';
  • 其他SHOW语句

    • 用于显示广泛的服务器状态信息:show status;
    • 显示创建特定数据库或表的MySQL语句:show create database;show create table;
    • 用来显示授予用户(所有用户或特定用户)的安全权限:show grants;
    • 用来显示服务器错误或警告消息:show errors;show warnings;
    • 查看SHOW语句帮助:help show;

      语法规范

  • 不区分大小写 ,但建议关键字大写,其他小写

  • 每条命令用分号**;**结尾
  • 每条命令根据需要缩进或换行
  • 注释
    • 单行: # 或者 —
    • 多行:/ 注释文字 /
    • Navicat快捷键:Ctrl+/
  1. 着重号****`区分关键字和字段名
    1. 创建字段含符号,如斜杠
  2. Select 计算器用法
  3. 起别名关键字 AS
    1. 起别名:方便理解,减少代码长度,区分重名字段
    2. 方法:使用as或空格,select 100*9 as 别名;
  4. 字符串用单引号或双引号
  5. 去重关键字 Distinct
  6. +号作用: 只有运算符功能,操作数都为数值,若有字符,则试图将其转为数值再做算,转换失败则作为0运算
  7. 拼接字符函数:concat(),若有字段为null则返回null,可用ifnull处理
  8. Select where条件查询:条件运算符<,>,<=,>=,=,!=,<>;逻辑运算符:&&,||,!,in,is null,not,and,or,like,between and,
  9. 通配符:%任意多个字符,_任意一个字符
  10. 转义字符用\或者用关键字escape 某字符

    delimiter 关键字的作用

    delimiter是mysql分隔符,在mysql客户端中分隔符默认是分号(;)。如果一次输入的语句较多,并且语句中间有分号,这时需要新指定一个特殊的分隔符。
    其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。默认情况下,delimiter是分号;。在命令行客户端中,如果有一行命令以分号结束,那么回车后,mysql将会执行该命令。
    详细解释:
    其实就是告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。
    默认情况下,delimiter是分号;。在命令行客户端中,如果有一行命令以分号结束, 那么回车后,mysql将会执行该命令。如输入下面的语句 :
    mysql> select * from test_table;
    然后回车,那么MySQL将立即执行该语句。
    2. delimiter的使用
    但有时候,不希望MySQL这么做。在为可能输入较多的语句,且语句中包含有分号。 这种情况下,就需要事先把delimiter换成其它符号,如//、$$或者;;。
    更改结束标志的定义如下:
    mysql>delimiter //
    示例:创建一个存储过程,在创建该存储过程之前,将delimiter分隔符转换成符号“//”,最后在转换回符号“;”。
    1. -- 将结束标志符更改为//
    2. delimiter //
    3. -- 创建存储过程
    4. create procedure proce_user_count(OUT count_num INT)
    5. reads sql data
    6. begin
    7. select count(*) into count_num from tb_user;
    8. end
    9. //
    10. -- 将结束标志符更改回分号
    11. delimiter ;

上面就是,先将分隔符设置为 //, 直到遇到下一个 //,才整体执行语句。
执行完后,最后一行, delimiter ; 将mysql的分隔符重新设置为分号;
如果不修改的话,本次会话中的所有分隔符都以// 为准。

distinct关键字:去重

去重
查询所有编号
select distinct 字段 from 表名;