建一个名字叫databasename的库
CREATE DATABASE IF NOT EXISTS databasename DEFAULT CHARSET utf8;
建表
CREATETABLEIFNOTEXISTS`runoob_tbl`(`runoob_id`INTUNSIGNEDAUTO_INCREMENT,`runoob_title`VARCHAR(100)NOTNULL,`runoob_author`VARCHAR(40)NOTNULL,`submission_date`DATE,PRIMARYKEY(`runoob_id`))ENGINE=InnoDBDEFAULTCHARSET=utf8;
以下语句为向MySQL数据表插入数据通用的INSERT INTO SQL语法
INSERTINTOtable_name(field1,field2,...fieldN)VALUES('asd','ada','ada');
以下实例中我们将向student表插入三条数据:
INSERT INTO student(id,NAME,sex,birth,department,address)VALUES(901,'张老大','男',1985,'计算机系','北京市海淀区');
INSERT INTO student(id,NAME,sex,birth,department,address)VALUES(902,'张老二','男',1986,'中文系','北京市昌平区');
INSERT INTO student(id,NAME,sex,birth,department,address)VALUES(903,'张三','女',1990,'中文系','湖南省永州市');
删除语句
DELETEFROMtable_name[WHEREClause]
1.表关联查询(两表,多表)
内连接 inner join
左连接 left join
右连接 right join
全连接
2.联合查询union
3.嵌套子查询select * from(select * from 表名)
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。
请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。
SQL UNION 语法
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
SQL UNION ALL 语法
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;
创建学生表
CREATE TABLE IF NOT EXISTS stu(NO INT PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(20));
INSERT INTO stu (NAME)VALUES("张"),("李"),("王"),("赵"),("田");
在创建一个科目表
CREATE TABLE IF NOT EXISTS sub(subno INT PRIMARY KEY AUTO_INCREMENT,
subname VARCHAR(25));
INSERT INTO sub(subname)VALUES("java"),("c"),("python"),("mysql");
还要创建一个成绩表
CREATE TABLE IF NOT EXISTS score(NO INT,score INT,subno INT);
INSERT INTO score(NO,score,subno)VALUES(1,89,1),(2,78,2),(3,96,3),(4,85,4);
2.表子查询
SELECT st.*,sc.* FROM stu st
LEFT JOIN score sc ON st.no=sc.no
LEFT JOIN sub su ON sc.subno=su.subno
WHERE sc.score > 60