创建数据库,创建表(不需要用语句)
use net2Myschool --切换数据库
select * from Grade
select * from Student
--增加数据
--insert into 表名(列名,...) values(值1....)
--1.列名个数与值个数对应
--2.类型要一致,长度不能超过设置的长度
--3.非空列必须写上
--4.注意外键值,必须在主键表出现过
--5.标识列,不能写。
--6.字符串,日期型需要加上''引用
--7.不得违反检查约束
insert into Grade(NJMC) values('S1')
insert into Grade(NJMC) values('S2')
insert into Grade(NJMC) values('Y2')
--增加学生
insert into Student(XSName, XSXB, XSNJ, XSDZ)
values('刘光文',0,2,'湖南株洲')
insert into Student(XSName, XSXB, XSNJ, XSDZ)
values('王兴',1,2,'湖南株洲')
insert into Student(XSName, XSXB, XSNJ, XSDZ)
values('李诗轩',0,2,'湖南株洲')
-----修改操作------------------------
--update 列名 set 列名=值,列名=值 where 条件(and ,or, not)
update Student set XSXB=1 where XSName='刘光文'
--删除
--delete from 表名 where 条件
delete from Student where XSName='颜佳'
--查询所有学生:1.找表,2.找条件,3.找显示列(*所有列)
/*
 select  要显示的列  from 表名
 where 条件  --选中条件满足的数据
 order by 列名  asc/desc
*/
select  *   from Student
--查询所有性别为1 的 学生
select  *  from Student where XSXB=1
--统计查询:统计学生数
select COUNT(*) from Student --where 条件
--分组统计查询:按学生性别统计学生
select XSXB,COUNT(*)  from Student --where 条件
group by XSXB
--order by --
--分组查询后筛选:按学生性别统计学生,
--只显示学生数>=2的性别
select XSXB,COUNT(*)  from Student
group by XSXB,
having COUNT(*)>=2
--多列分组,多列排序。
--连接查询:显示学生信息,学生年级需要显示为名称
--显示多表数据[多表数据有逻辑关系]
select  * from Student
inner join Grade
on Student.XSNJ=Grade.NJId
--第二种方法写
--select * from 表名1,列表2
--where Student.XSNJ=Grade.NJId
--子查询:把查询出的结果当作一个值,一列值,或者是一个表
--来使用。
--三种表现:
--  1)selete  * from 表名 where 列名(  =><) ( 子查询)
--  2)select * from 表名 where 列名 (not) in ( 子查询 )
--  3)  select * from (子查询) as tab [中间表技术]
--union 联合查询:把查询出来的几个查询结果,一并输出
/*
 select * from 表名1
 union
 select * from 表名2
*/