T-SQL 的简单查询语句
通配符:
“_”: 代表匹配一个字符
“%”: 代表匹配多个字符;
[]:表示范围,可以包含多个数据
[^] 表示取反
“-“ 表示范围
逻辑与 and 逻辑或 or 逻辑非 not
聚会函数 :
聚合函数:sum()/max()/min()/avg()/count()
where /group by /having
-----------删除数据------------------------------
delete:有选择性的删除
删除的信息不能被子表所有使用
truncate:删除整张表的所有信息
不能删除主表的新表
标识列重新赋值
--------------添加 修改--------------------
添加 insert into table1 values('','',''');
修改 : update table set 列名 =‘’,列名=‘’
------------------查询--------------------
模糊查询 select * from table where name like ‘张%’;
select * from table 查询所有信息
select name 姓名 ,sex 性别 from table
select * from table where name is null; 查询信息为的
select top 3 from table 查询前三条信息
----in ---between --的使用---
select * from table where age in(21,23);
select * from table where age between 10 and 20;包括10与20 在内
-----------
order by 用于排序
select* from table order by Age asc :升序 查询
select * from table order by Age desc 降序排序
group by 分组查询 可以和聚合函数一起使用
having 需要跟Group by 结合一起使用 作用:筛选数据 having用于筛选分组后的数据
select studentName, avg(score) from student group by studentName
查询值为空: select * from table where sex is null;
---------多表连接 -----
内链接: select * from tablea a inner join tableb b on a.id=b.id ;
-------------时间的计算-------
--周年的
SELECT DATEDIFF(day,'2008-12-30',GETDATE())/365
--没有周年
SELECT DATEDIFF(YEAR,'2008-12-30',GETDATE())
--时间条件的查询----
(cast(ReplyDate as datetime) >= '2015-07-03 00:00:00') and (cast(ReplyDate as datetime) < '2015-07-03 23:59:59')
也可以用:
and NiGaoSJ between '2015-07-02 0:0:00' and '2015-07-02 23:59:59'
----------------------------------------------------
数据库的表结构改变时,顺便更新相关的视图 :
去除里面一些重复的flowID 数据
select *from T_WorkFlow_MainInfo m inner join (SELECT * FROM dbo.T_BGSW_QingJia
WHERE (ID IN(SELECT MAX(ID) FROM T_BGSW_QingJia GROUP BY FlowID))) jq on jq.FlowID = m.FlowID
where WorkFlowType='12'
查询表单的重复的数据
select * from (select COUNT(*) as a ,id from T_River_GaugingData group by id) as B where B.a >1
---------------------------------------------------
查询近几天的某个时间点
select DateAdd(DAY ,-3,getdate())
---------------查询子节点的关系-------------------------------------------------
select * ,fID =(select count (*)from table where table。Fid = t。id )from table t
---------------------------将时间延长一年-------------------
update T_Vote_Main set EndTime = dateadd(Y ,+365,EndTime) where FlowID = 'acad59a1d55b433aaabb9c7ae1c7e251'
---------------计算百分比的例子-------------------------
declare @A table([ID] int,[Name] nvarchar(2),[num] int)
Insert @A
select 1,N'小明',23 union all
select 2,N'小刚',33 union all
select 3,N'小红',44
Select a.[Name],
cast(a.[num]*1.0/sum(a.[num])over() as numeric(8,2)) as per
from @A as a
---------------sql查询的时候对某个字段进行排序得到排名的序号--------
row_number() over(order by kh_wo1 desc) as kh_wo1PM,
CREATE TABLE [StudentScores]
(
[UserName] NVARCHAR(20), --学生姓名
[Subject] NVARCHAR(30), --科目
[Score] FLOAT, --成绩
)
INSERT INTO [StudentScores] SELECT 'Nick', '语文', 80
INSERT INTO [StudentScores] SELECT 'Nick', '数学', 90
INSERT INTO [StudentScores] SELECT 'Nick', '英语', 70
INSERT INTO [StudentScores] SELECT 'Nick', '生物', 85
INSERT INTO [StudentScores] SELECT 'Kent', '语文', 80
INSERT INTO [StudentScores] SELECT 'Kent', '数学', 90
INSERT INTO [StudentScores] SELECT 'Kent', '英语', 70
INSERT INTO [StudentScores] SELECT 'Kent', '生物', 85
SELECT
UserName,
MAX(CASE Subject WHEN '语文' THEN Score ELSE 0 END) AS '语文',
MAX(CASE Subject WHEN '数学' THEN Score ELSE 0 END) AS '数学',
MAX(CASE Subject WHEN '英语' THEN Score ELSE 0 END) AS '英语',
MAX(CASE Subject WHEN '生物' THEN Score ELSE 0 END) AS '生物'
FROM dbo.[StudentScores]
GROUP BY UserName
--简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END
----------------
------------有店长查店长的数据没有查助理店长----------------------------------------
select account ,shopid from users t where account = (select top 1 account from users
where shopid = t.shopid and
(roleName = '店长' or roleName='助理店长')
order by rolename )
-----------------------------------
replace () 函数
select replace(‘门店asd’,'门店','')--将门店替换为 ‘’
-----------------------------------------------------------------------------------------------
T-SQL 的简单查询语句的更多相关文章
- SQL Server-简单查询语句,疑惑篇(三)
前言 对于一些原理性文章园中已有大量的文章尤其是关于索引这一块,我也是花费大量时间去学习,对于了解索引原理对于后续理解查询计划和性能调优有很大的帮助,而我们只是一些内容进行概括和总结,这一节我们开始正 ...
- SQL Server-简单查询语句,疑惑篇
前言 对于一些原理性文章园中已有大量的文章尤其是关于索引这一块,我也是花费大量时间去学习,对于了解索引原理对于后续理解查询计划和性能调优有很大的帮助,而我们只是一些内容进行概括和总结,这一节我们开 ...
- Oracle之SQL的简单查询
查询结构 --SQL语句的执行原理以及语法结构: /* SELECT * | 列名1[,列名2...] | 表达式 FROM 表名 [表的别名] WHERE 分组前的筛选条件 GROUP BY 列名1 ...
- SQL结构化查询语句
SQL结构化查询语句 SQL定义了查询所有关系型数据库的规则. 1.通用语法 SQL语句可以单行或者多行书写,以分号结尾 可以使用空格和缩进增强可读性 不区分大小写,但是关键字建议大写 3种注释 注释 ...
- T-SQL简单查询语句(模糊查询)
T-SQL简单查询语句 简单查询: 1.最简单查询(查所有数据) select * from 表名: 注:* 代表所有列 select * from info 2.查询指定列 select code, ...
- Sql Server 简单查询 异步服务器更新语句
//结构:select 子句 [into 子句] from 子句 [where 子句] [group by 子句] [having 子句] [order by 子句] select dept_c ...
- oracle中简单查询语句的格式及执行顺序分析
一条简单的查询sql格式如下: SELECT ... FROM .... [WHERE ...] --过滤单行 [GROUP BY ... [HAVING ...]]--GROUP BY对前面wh ...
- sql的基本查询语句
--------------------------------------------基本常用查询-------------------------------------- 自己简单练习做了个表. ...
- sql sever基本查询语句
查询(*可代表全部)(<>代表不等于于)select 列名 from 表名(,隔开)where 查询条件order by 排序的列名+连接的数据类型必须兼容(结果为字符串数据的连接 , 如 ...
- T-SQL简单查询语句
简单查询: 1.最简单查询(查所有数据)select * from 表名: 注:* 代表所有列select * from info 2.查询指定列select code,name from info ...
随机推荐
- Linux权限扩展
在LINUX中我们创建文件或文件夹的时候系统总会为我们创建的对象分配一个默认的权限,那么今天我们就了解一下这个默认权限是怎么得来的?以及我们如何来改变系统的默认权限设置? 在LINUX系统中我们打开每 ...
- 牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结 转载
基础篇:操作系统.计算机网络.设计模式 一:操作系统 1. 进程的有哪几种状态,状态转换图,及导致转换的事件. 2. 进程与线程的区别. 3. 进程通信的几种方式. 4. 线程同步几种方式.(一定要会 ...
- 一些常用的NLTK频率分布类中定义的函数
fdist=FreqDist(samples)创建包含给定样本的频率分布fist.inc(sample)增加样本fdist['monstrous']计数给定样本出现的次数fdist.freq('mon ...
- IOS第18天(10,核心动画-转盘,自定义buton,旋转动画)
*****HMViewController.m #import "HMViewController.h" #import "HMWheelView.h" @in ...
- IOS第18天(9,核心动画-动画组)
****动画组 // 核心动画都是假象,不能改变layer的真实属性的值// 展示的位置和实际的位置不同.实际位置永远在最开始位置 #import "HMViewController.h&q ...
- IOS第13天(2,私人通讯录,plist存储,偏好设置,归档)
***************plist存储 // 当点点击保存的时候调用 //保存 - (IBAction)save:(id)sender { // 获取沙盒的根路径 // NSString *ho ...
- 将/home目录从单独的分区迁移回/目录下
安装系统的时候, 将/, swap, /home这三个目录放在了三个不同的分区, 现在希望将/home目录移回/目录下. 1. umount /home, 然后在/目录下创建/home_new, 通过 ...
- 【iCore3 双核心板_FPGA】实验十七:基于I2C总线的ARM与FPGA通信实验
实验指导书及代码包下载: http://pan.baidu.com/s/1dFqddMp iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...
- mongodb 安装后 出现警告:** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
警告问题:当前mongodb 支持的最大文件数有256个,但是推荐至少1024个. 解决办法: 1.关闭现在打开的mongodb 终端窗口 2.重新打开终端并运行一下命令: sudo launchct ...
- mysql替换制定的内容的 类似正则表达式的功能
content= 'asnfojassozxpdsgdspdps神龙架谁骄傲的骄傲搜ID飞机扫' SELECT content FROM test WHERE id =1 吧zx替换成ZZZZ UPD ...