SQL Server 2012 学习笔记3 增查改删
现在举例几个“增查改删”的语句
select * from UserInfor --查找所有字段
select username,UserId from UserInfor -- 查找username,UserId两个字段
select top 2* from UserInfor where (Major='计算机' or Major='土木工程') and Sex=0 order by Age desc --降序
select top 2* from UserInfor where major in('计算机','土木工程') and Sex=0 order by Age --升序
select * from UserInfor where Age > -- max() min() Avg()
(
select Avg(Age) from UserInfor
)
select sum(Age) from UserInfor -- 年龄总和
select count(*) as UserCount from UserInfor where Major='计算机' -- count(*) 代表某一列有多少个, as 代表别名
select count(*) as UserCount,Major from UserInfor group by major -- 按照major计算分别有多少人
select count(*) as UserCount,Major from UserInfor group by Major having count(*) >2 -- 这里having是配合group by使用,这里不能用where
select * from UserInfor where RealName like '%张%' -- 模糊查询 “张%”以张开头;“%张”以张结尾;“%张%”包含张
select distinct realname from userinfor -- 只显示列中不同的值,不重复的数据
select top 2 * -- 分页语句
from
(
select row_number() over(order by userId) as rownumber,* from userinfor -- row_number() over找出行号, 以userid排序,别名 rownumber
) A
where rownumber > 2 -- >0第一页;>2第二页 ...
select UserID,Age, -- case when 语句
case
when age>=20 and age<=24 then '大一'
when age>=25 and age<=28 then '大二'
else '大三'
end as usergrade from userinfor
select * from UserInfor where age between 20 and 24 -- betwwen and的用法
select UserId ,username, ISNULL (classname,'四班') from UserInfor -- 判断classname字段有没有NULL,有NULL的设定值为'四班'
select year(getdate()) -- 获取当前时间的年 Month(getdate()) day(getdate())
select * from UserInfor where year(getdate())-year(Birthday )>25 -- 找出年龄大于25岁的员工信息
select DATEADD (yy,100,getdate()) -- yy代表年, 当前时间加上100年;mm代表月;dd代表天
select DATEDIFF (yy,getdate(),'2018/12/31') -- yy代表年,当前时间距离2018/12/31多少年;mm代表月;dd代表天
select UI.userid,UI.username,UI.qq,UI.realname,SS.Scoreid,ss.chinesescore --联合查询的三种方法,以左边为准,右边没有的用NULL补
from UserInfor UI left join stuscore SS on
UI.UserId =SS.UserId
select UI.userid,UI.username,UI.qq,UI.realname,SS.Scoreid,ss.chinesescore --联合查询的三种方法,以右边为准,左边没有的用NULL补
from UserInfor UI right join stuscore SS on
UI.UserId =SS.UserId
select UI.userid,UI.username,UI.qq,UI.realname,SS.Scoreid,ss.chinesescore --联合查询的三种方法,两边都有的值
from UserInfor UI inner join stuscore SS on
UI.UserId =SS.UserId
select UIR.*,PP.MotherName,PP.fathername from
(select UI.userid,UI.username,UI.qq,UI.realname,SS.Scoreid,ss.chinesescore --三个表的联合查询,超过四个表的联合查询,就是需求有问题,要用到缓存
from UserInfor UI inner join stuscore SS on
UI.UserId =SS.UserId ) UIR inner join Parent PP on
UIR.UserId =pp.UserId
insert into parent values(5,'kk','')--主键是自增类型,不需要赋值,后面所以字段可以为空值,但是不能没有对应值
insert into parent(UserId ,FatherName ) values(6,'ss') -- 添加某些列,其他补NULL
update parent set FatherName ='GG',MotherName ='HH' where UserId =6 --修改表
delete parent where Userid=5 or userid=6 --删除表
insert into CopyParent(userid,copymothername,copyfathername) select UserId,Mothername,fathername from Parent --表的复制
SQL Server 2012 学习笔记3 增查改删的更多相关文章
- SQL Server 2012 学习笔记5
1. 索引(Index) 索引是快速的定位和查找数据.索引分为: 聚集索引:唯一,默认主键,一般选取比较连贯的字段,聚集索引是物理排序. 非聚集索引: 并没有把数据物理排序,只是多了一个索引页(包括索 ...
- SQL Server 2012 学习笔记1
1. 新建的数据库会产生两个文件(数据文件.mdf 和日志文件.ldf) 2. 编辑表格和为表格录入数据 "Design"为设计表格,"Edit Top 200 Rows ...
- SQL Server 2012 学习笔记4
1. 约束 , 给某些字段添加约束条件, 比如年龄在1-100岁之间 添加约束,输入 Age>1 and Age < 100 2. 存储过程 存储过程也可以做增删改查 存储过程的 ...
- SQL Server 2012学习笔记 1 命令行安装
setup.exe /Q /IACCEPTSQLSERVERLICENSETERMS /ACTION=install /PID=748RB-X4T6B-MRM7V-RTVFF-CHC8H /FEATU ...
- SQL Server 2012 学习笔记2
1. 新建数据库 可以在对应目录下右键新建数据库,也可以用程序添加: 先打开程序编辑对话框"New Query" create database Library 2. 添加表格 可 ...
- SQL Server 2012学习笔记 2 Server Core中命令行安装SQL
Setup.exe /qs /ACTION=Install /FEATURES=SQLEngine,Replication /INSTANCENAME=MSSQLSERVER /SQLSVCACCOU ...
- SQL Server 2012 数据库笔记
慕课网 首页 实战 路径 猿问 手记 Python 手记 \ SQL Server 2012 数据库笔记 SQL Server 2012 数据库笔记 2016-10-25 16:29:33 1 ...
- ylb:创建数据库、表,对表的增查改删语句
ylbtech-SQL Server:SQL Server-创建数据库.表,对表的增查改删语句 SQL Server 创建数据库.表,对表的增查改删语句. 1,ylb:创建数据库.表,对表的增查改删语 ...
- EF里单个实体的增查改删以及主从表关联数据的各种增删 改查
本文目录 EF对单个实体的增查改删 增加单个实体 查询单个实体 修改单个实体 删除单个实体 EF里主从表关联数据的各种增删改查 增加(增加从表数据.增加主从表数据) 查询(根据主表找从表数据.根据从表 ...
随机推荐
- centos 7 安装mysql
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm # rpm -ivh mysql-community- ...
- rabbitmq技术
Rabbitmq 初识rabbitmq RabbitMQ是流行的开源消息队列系统,用erlang语言开发.RabbitMQ是AMQP(高级消息队列协议)的标准实现.如果不熟悉AMQP,直接看Rabbi ...
- 【摘录】某表含有N个字段超精简模糊查询方法
SELECT * FROM table where CONCAT(a,b,c......) like '%key%' select name from syscolumns where id=obj ...
- android 按钮点击效果实现 在studio下出现的错误
在照做上一篇随笔的时候 在studio下为了方便我在写完一个 btn_select.xml 文件后直接粘贴了三个文件到drawable下 结果问题来了 总是报这样一个错误: Resource is n ...
- Beta版本冲刺———第六天
会议照片: 项目燃尽图: 1.项目进展: 该项目的Beta版本冲刺到今天就大体结束,但是小组依然困在"如何保存每次游戏的分数,并将其排序列在排行榜中"的问题上,小组四个人都在一起解 ...
- Extjs 使用图标字体来美化按钮)
1. 使用Font Awesome,下载地址http://www.bootcss.com/p/font-awesome/#icons-new 2. 把font和css目录放到 Ext的app目录下面 ...
- virtio 半虚拟化驱动
半虚拟化驱动 5.1.1 virtio概述 KVM是必须使用硬件虚拟化辅助技术(如Intel VT-x.AMD-V)的hypervisor,在CPU运行效率方面有硬件支持,其效率是比较高的:在有Int ...
- 【BZOJ 2843】极地旅行社
复习一下$LinkCutTree$的模板. #include<cstdio> #include<cstring> #include<algorithm> #defi ...
- nginx正向代理,反向代理,透明代理(总结)
1正向代理 正向代理,也就是传说中的代理,他的工作原理就像一个跳板, 简单的说, 我是一个用户,我访问不了某网站,但是我能访问一个代理服务器 这个代理服务器呢,他能访问那个我不能访问的网站 于是我先连 ...
- 【转】ListView学习笔记(二)——ViewHolder
在android开发中Listview是一个很重要的组件,它以列表的形式根据数据的长自适应展示具体内容,用户可以自由的定义listview每一列的布局,但当listview有大量的数据需要加载的时候, ...