添加用户:guest,密码为123,
insert into use (host,user,password,select_priv,insert_priv,update_priv)
values('localhost','guest',password('123'),'Y','Y','Y');
flush PRIVILEGES;
选择数据库:
use 数据库名
显示数据库列表:
show databases;
在选择数据库后,显示所有表:
show tables;
显示数据表的属性,属性类型,主键信息,是否为空,默认值等
show columns from 数据表;
显示详细索引信息:
show index from 数据表;
后面加上\G按列打印
显示数据库的表信息
show table status from 数据库;
创建数据库:
create database 数据库名;
删库跑路:
drop database 数据库名;
创建数据表:创建一个学生表,有id int,name varchar(20),sex int三个字段
create table student (id int,name varchar(20),sex int);
创建一个test_tbl表,id字段为主键,整型,无符号自增,title字段,varchar(100),非空
author,varchar(40),非空
date,datetime
引擎是InnoDB,字符编码是utf8
CREATE TABLE IF NOT EXISTS `runoob_tbl`(
`runoob_id` INT UNSIGNED AUTO_INCREMENT,
`runoob_title` VARCHAR(100) NOT NULL,
`runoob_author` VARCHAR(40) NOT NULL,
`submission_date` DATE,
PRIMARY KEY ( `runoob_id` )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
删除表:
drop table 表名;
插入数据:
insert into 表名 (字段1,字段2,…..字段n) values (value1,value2,value3,…..value3)
查询数据:
SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[LIMIT N][ OFFSET M]
- 使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
- 使用 LIMIT 属性来设定返回的记录数
- 通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0
- 可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件
- 可以读取一条或者多条记录
修改更新语句:
UPDATE table_name SET field1=new-value1, field2=new-value2 [WHERE Clause]
删除语句:
DELETE FROM table_name [WHERE Clause]
记得加上where语句
使用like进行模糊查询
UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中。
例如:
SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions] UNION [ALL | DISTINCT] SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditions];
排序:
SELECT field1, field2,...fieldN table_name1, table_name2... ORDER BY field1, [field2...] [ASC [DESC]]
使用 ASC 或 DESC 关键字来设置查询结果是按升序或降序排列。 默认情况下,它是按升序排列。
分组:
SELECT column_name, function(column_name) FROM table_name WHERE column_name operator value GROUP BY column_name;
连接:
- INNER JOIN(内连接,或等值连接):获取两个表中字段匹配关系的记录。
- LEFT JOIN(左连接):获取左表所有记录,即使右表没有对应匹配的记录。
- RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。