mysql -u root -p
Enter password : ******
create database 数据库名;
eg: create database sbxl;
mysqladmin -u root -p create sbxl;
Enter password : ******
drop database 数据库名;
eg: drop database sbxl;
[root@host]# mysql -u root -p
Enter password:******
mysql> use RUNOOB;
Database changed
mysql>
CREATE TABLE table_name (column_name column_type);
eg: CREATE TABLE IF NOT EXISTS `sbxl`(
`sbxl_id` INT UNSIGNED AUTO_INCREMENT,
`sbxl_title` VARCHAR(100) NOT NULL,
`sbxl_author` VARCHAR(40) NOT NULL,
`sbxl_date` DATE,
PRIMARY KEY ( `sbxl_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1;
PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔;
ENGINE 设置存储引擎,CHARSET 设置编码.
drop table 数据库表名;
eg: drop table sbxl;
insert into 数据库表名 (字段1,字段2,......) values
(字段1数据,字段2数据,......);
eg: insert into `sbxl` (sbxl_title, sbxl_author,
sbxl_date) values
("学习 PHP", "菜鸟教程", NOW());
insert into `sbxl` (sbxl_title, sbxl_author,
sbxl_date) values
("JAVA 教程", "RUNOOB.COM", '2016-05-06');
select 字段1,字段2,.... from 数据库表名
[WHERE Clause][LIMIT N][ OFFSET M]
eg: select sbxl_title,sbxl_author) from `sbxl`;
查询所有数据: select * from sbxl;
select 字段1, 字段2,...... from 数据库表1,数据库表2,......
[WHERE condition1 [AND [OR]] condition2.....
eg: select * from `sbxl` where sbxl_author = "菜鸟教程";
eg: select * from `sbxl`
where binary sbxl_author = "RUNOOB.COM"
MySQL 的 WHERE 子句的字符串比较是不区分大小写的,你可以使用 BINARY 关键字来设定 WHERE 子句的字符串比较是区分大小写的;
update 数据库表名 set 字段1 = 字段1数据, 字段2 = 字段2数据,.......
[WHERE Clause];
eg: update `sbxl` set sbxl_title = "学习C++" where sbxl_id = 1;
delete from 数据库表名 [WHERE Clause];
eg: delete from `sbxl` where sbxl_id = 1;
select 字段1,字段2,......from 数据库表名
WHERE 字段1 LIKE condition1 [AND [OR]] 字段2 = 'somevalue'
eg: select * from `sbxl` where sbxl_author like '%COM';
你可以在 WHERE 子句中指定任何条件。
你可以在 WHERE 子句中使用LIKE子句。
你可以使用LIKE子句代替等号 =。
LIKE 通常与 % 一同使用,类似于一个元字符的搜索。
你可以使用 AND 或者 OR 指定一个或多个条件。
你可以在 DELETE 或 UPDATE 命令中使用 WHERE…LIKE 子句来指定条件。
MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。多个 SELECT 语句会删除重复的数据
union是产生的两个记录集(字段要一样的)并在一起,成为一个新的记录集
SELECT expression1, expression2, … expression_n
FROM tables
[WHERE conditions]
UNION [ALL | DISTINCT]
SELECT expression1, expression2, … expression_n
FROM tables
[WHERE conditions];
expression1, expression2, … expression_n: 要检索的列。
tables: 要检索的数据表。
WHERE conditions: 可选, 检索条件。
DISTINCT: 可选,删除结果集中重复的数据。默认情况下 UNION 操作符已经删除了重复数据,所以 DISTINCT 修饰符对结果没啥影响。
ALL: 可选,返回所有结果集,包含重复数据。
mysql> SELECT * FROM Websites;
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 菜鸟教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+---------------------------+-------+---------+
mysql> SELECT * FROM apps;
+----+------------+-------------------------+---------+
| id | app_name | url | country |
+----+------------+-------------------------+---------+
| 1 | QQ APP | http://im.qq.com/ | CN |
| 2 | 微博 APP | http://weibo.com/ | CN |
| 3 | 淘宝 APP | https://www.taobao.com/ | CN |
+----+------------+-------------------------+---------+
3 rows in set (0.00 sec)
eg: select country from Websites
union
select country from apps
order by country;
eg: select country from Websites
union all
select country from apps
order by country;