MySQL基础

2017-05-26  本文已影响10人  c4a1d989518e
# 启动 MySQL 服务
sudo service mysql start             

# 使用 root 用户登录,实验楼环境的密码为空,直接回车就可以登录
mysql -u root
show databases;
use <数据库名>
show tables;
quit 或者 exit
CREATE DATABASE <数据库名字>;
CREATE TABLE 表的名字
(
列名a 数据类型(数据长度),
列名b 数据类型(数据长度),
列名c 数据类型(数据长度)
);
example:
CREATE TABLE employee (id int(10),name char(20),phone int(12));
SELECT * FROM employee;

我们尝试向 employee 中加入 Tom、Jack 和 Rose:

INSERT INTO employee(id,name,phone) VALUES(01,'Tom',110110110);

INSERT INTO employee VALUES(02,'Jack',119119119);

INSERT INTO employee(id,name) VALUES(03,'Rose');
SELECT 要查询的列名 FROM 表名字 WHERE 限制条件;
SELECT name,age FROM employee WHERE age>25;

查找一个名字为 Mary 的员工的 name,age 和 phone:

SELECT name,age,phone FROM employee WHERE name='Mary';

“AND”与“OR”

SELECT name,age FROM employee WHERE age<25 OR age>30;

IN 和 NOT IN
用于筛选“在”或“不在”某个范围内的结果,比如说我们要查询在dpt3或dpt4的人:

SELECT name,age,phone,in_dpt FROM employee WHERE in_dpt IN ('dpt3','dpt4');

通配符
关键字 LIKE 在SQL语句中和通配符一起使用,通配符代表未知字符。SQL中的通配符是 _ 和 % 。其中 _ 代表一个未指定字符,% 代表不定个未指定字符。

SELECT name,age,phone FROM employee WHERE phone LIKE '1101__';
SELECT name,age,phone FROM employee WHERE name LIKE 'J%';
SELECT name,age,salary,phone FROM employee ORDER BY salary DESC;
SELECT MAX(salary) AS max_salary,MIN(salary) FROM employee;
SELECT of_dpt,COUNT(proj_name) AS count_project FROM project
WHERE of_dpt IN
(SELECT in_dpt FROM employee WHERE name='Tom');
SELECT id,name,people_num
FROM employee,department
WHERE employee.in_dpt = department.dpt_name
ORDER BY id;

参考文章:
Mysql

上一篇下一篇

猜你喜欢

热点阅读