1.查看当前所有的数据库:show databases
2.打开指定的库名:use 库名
3.查看当前库的所有表:show tables
4.查看其他库的所有 表:show tables from 库名
5.创建表:create table 表名(
列名 列类型
列名 列类型
.............
)
6.查看表结构:desc 表名
7.查看服务器的版本:
a.登录到mysql服务端:select version()
b.没有登录到mysql服务端:
mysql --version 或 mysql --V
c.开启mysql的服务器:以管理员身份打开windows命令行窗口,然后输入:net start mysql 版本号
d.关闭mysql的服务器:以管理员身份打开windows命令行窗口,然后输入:net stop mysql 版本号
8.mysql的登录与退出:
登录:mysql [-h 主机名 -P 端口号] -u 用户名 -p密码(如果链接的是本机的话,则中括号里面的可以去除)
退出:exit 或ctrl+c
9.+号的作用:mysql中的+号仅仅只有一个功能:运算符
当俩个操作数均为数值型时,则做加法运算;若其中一方为字符型,它会试图将字符型转换成数值型,若转换成 功,则继续做加法运算;若转换失败,则字符型数值转换成0;若其中一个操作数为null,则结果肯定为null.
10.去重:distinct
案例:查询员工表中所涉及的所有部门编号
SELECT DISTINCT department_id FROM employees
11.拼接:concat
案例:查询员工名和姓并拼接成一个新的字段,并显示为姓名
SELECT CONCAT(last_name,first_name) AS 姓名
FROM employees
12.条件运算符:> < =(等于,和Java中的不一样==) !=(不等于或者<>) >= <=
逻辑运算符:&&、||、! 或者 and、or、nor
模糊查询:like:一般和通配符搭配使用
通配符:%任意多个字符,可以包含0个字符
_任意单个字符
案例:查询员工名中第三个字符为e,第五个字符为a的员工名和工资
SELECT last_name,salary FROM employees WHERE last_name LIKE `__e_a%`
案例:查询员工名中第二个字符为_的员工名(使用转译字符\)
SELECE last_name FROM employees WHERE last_name LIKE `_\_%`
between and:包含俩个临界值,这俩个临界值的顺序不要颠倒,结果会发生变化
案例:查询员工编号在100到120之间的员工信息
SELECT * FROM employees WHERE employee_id BETWEEN 100 AND 120
in:判断某字段的值是否属于in列表中的某一项(不支持通配符)
案例:查询员工工种编号是:IT_PROG、AD_VP、AD_PRES
SELECT last_name,job_id FROM employees WHERE job_id IN(`IT_PROT`,`AD_VP`,`AD_PRES`)
is null(或 is not null):判断是否为空
注意:字符型和日期型的常量值必须要用单引号引起来,而数值型不需要。
经典面试题:
select * from employees 和selec * from employees where id like `%%` and last_name like `%%`的执行结果是否一样?
答:不一样,当判断的字段有null时,就不一样
如果后面的查询条件改为:selece * from employees where id like `%%` or last_name like `%%`,执行的结果就一样了。