码迷,mamicode.com
首页 > 数据库 > 详细

数据库最基础的查询总结

时间:2015-11-03 10:34:55      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:

--------- 插入数据的语法:-----------
-- 全字段
insert into 表名 values(所有字段对应的值)
eg:insert into student values(‘STU001‘,‘teser‘,‘男‘,20)
---指定字段插入
insert Into 表名(字段1,字段2,....字段n) values(值1,值2,....值n);
eg:insert into student(stuId,stuName) values(‘STU0002‘,‘张三‘)
----------修改数据语法:-------------
update 表名 set 字段1=值,字段2=值2,.....字段n=值n where 条件[以主键为修改标准]
eg:update student set stuName=‘张三‘,stuSex=‘男‘,stuAge=20 where stuId=1
----------删除的语法--------------
delete from 表名 where 删除的条件[以主键为修改标准]
eg:delete from student where stuId=‘STU0002‘

---------------单表查询----------------------
-- 查询表中所有记录
select * from 表名
eg:select * from student
-- 查询表中指定字段记录
select 筛选表中存在字段[stuId,stuName] from 表名
eg:select stuId,stuName from student
-- 根据条件查询对应记录
select * from 表名 where 筛选的条件
eg:select * from student where stuId=‘STU001‘
-- 根据条件筛选指定字段的记录
select 筛选表中存在字段 from 表名 where 筛选的条件
eg:select stuName from student where stuId=‘STU001‘
-- 根据条件筛选指定字段不重复记录
select distinct(需要去掉重复字段) from 表名 <where 筛选的条件>
eg:select distinct(stuSex) from student
-- 根据条件备份表中的数据
select 字段1,字段2,字段n into 新表 from 旧表 <where 筛选的条件>
eg:select stuName,stuAge into student_bakup from student
-- 筛选限制记录条数的查询
select top 限制条数 <*>|字段1,字段2,字段n from 表名
eg:select top 1 stuName,stuSex from student

-------------子查询----------------
子查询作为条件:
select * from 表名 where 字段<=|in|not in>(select 字段 from 表名)
eg:select * from student where stuId not in (select stuId from score)
eg:select * from student where stuId in (select stuId from score)
eg:select * from score where stuId=(select stuId from where stuName=‘张三‘)
子查询作为表:
select * from (select *,AAA from 表名) as b
eg:
select * from
(select *,ROW_NUMBER() over(order by EMPLOYEE_ID) rowId from EMPLOYEES) b
where rowId>(1-1)*3[每页第一记录对应下标] and rowId<=3*1
子查询作为列:
select (select stuName from student where stuId = Score.stuId),* from Score
-------------聚合查询--------------
-- 查询结果只包含聚合函数
select max|avg|sum|count|min from 表名
eg:select count(stuId) from student
-- 查询结果中包含除聚合函数以外字段
select max|avg|sum|count|min,字段1,字段n from 表名 group by 字段1,字段n
eg:select max(score),min(score),avg(score),sum(score),stuId,stuName from student
group by stuId,stuName
-- 对查询聚合统计结果需要再次筛选
select max|avg|sum|count|min,字段1,字段n from 表名 group by 字段1,字段n having(max|avg|sum|count|min<运算符>[构成一个返回true|false条件语句])
eg:select max(score),min(score),avg(score),sum(score),stuId,stuName from student
group by stuId,stuName having(avg(score)>80)
-------------联表查询--------------
-- 全连接(结果所有表的记录相乘)
select * from 表1,表2,表3,表n

-- 内连接
select * from 表1
inner join 表2 on 表1和表2连接条件
...........
inner join 表n on 表n-1和表n的连接条件
--

--------------------------------分页查询----------------------

select * from 

(select *,ROW_NUMBER()over(order by bookId) rowId from bookInfo where 1=1 and bookName like ‘%xx%‘) as b where rowid>(1-1)*5 and rowId<=1*5     //【and bookName like ‘%xx%‘{含有某字段的字-简称模糊查询}】;

 

{}注释

//可用可不用

【】可直接用的语句

xx某字段的一个字

 

数据库最基础的查询总结

标签:

原文地址:http://www.cnblogs.com/ADAD/p/4932317.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!