SQL 笔记
--查询某一列在哪个表里
SELECT name ,
object_id ,
type ,
type_desc
FROM sys.objects
WHERE object_id IN ( SELECT object_id
FROM sys.columns
WHERE name = '列名' )
下面是关于用SQL对日期的一些查询 和统计,主要是在项目中有遇到 按照 日、周、月、年来统计数据,特此记录一下:
1、根据当前日期获取之前一个月的数据
--根据当前日期 往前推一个月
WITH WeekDate AS (
SELECT CAST(DATEADD(DAY,-31,GETDATE()) AS DATETIME) AS riqi
UNION ALL
SELECT riqi + 1 FROM WeekDate WHERE riqi+1<GETDATE()
)
SELECT CONVERT(CHAR(8),a.riqi,112) FROM WeekDate a
2、根据当前日期 获取当前月的每一天的数据
--根据当前日期 获取当前月 每一天
WITH WeekDate AS (
select dateadd(d,-day(GETDATE())+1,GETDATE()) AS riqi
UNION ALL
SELECT riqi + 1 FROM WeekDate WHERE riqi+1<=(select dateadd(d,-day(GETDATE()),dateadd(m,1,GETDATE())))
)
SELECT CONVERT(CHAR(8),a.riqi,112) AS 日 FROM WeekDate a
3、根据当前时间获取本周日期
--根据当前时间获取本周日期 每一天
WITH WeekDate AS (
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) AS riqi
UNION ALL
SELECT riqi + 1 FROM WeekDate WHERE riqi+1<=(SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 6))
)
SELECT CONVERT(CHAR(8),a.riqi,112) AS 日 FROM WeekDate a
4、将一串编号显示成一个字段 用逗号分隔
SELECT STUFF(( SELECT ',' + CONVERT(VARCHAR(500), RoleID) FROM SysRole tt FOR XML PATH('') ), 1, 1, '') AS RoleID
SELECT RoleID FROM dbo.SysRole
效果如下:

5、其他
--当前时间 获取本周第一天 周一
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0) --当前时间 获取本周最后一天 周日
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 6) ---当月第一天
select CONVERT(CHAR(8),dateadd(d,-day(getdate())+1,getdate()) ,112)
---当月最后一天
select CONVERT(CHAR(8),dateadd(d,-day(getdate()),dateadd(m,1,getdate())),112) SELECT YEAR(GETDATE()) //2016
SELECT MONTH(GETDATE()) //11
SELECT DAY(GETDATE()) //27
以后再有收集到的再慢慢更
SQL 笔记的更多相关文章
- SQL 笔记 By 华仔
-------------------------------------读书笔记------------------------------- 笔记1-徐 最常用的几种备份方法 笔记2-徐 收缩数据 ...
- SQL笔记 --- 数据库设计步骤(转)
SQL笔记 --- 数据库设计步骤 目录 总体设计过程需求分析概念结构设计逻辑结构设计数据库物理设计数据库实施数据库运行和维护 总体设计过程 0 » 下一篇:vim 命令集 posted @ 2012 ...
- SQL笔记1:SELECT及SELECT高级应用
T-SQL笔记1:SELECT及SELECT高级应用 本章摘要 1:安装AdventureWorks 2:基本运算符和表达式 3:between 4:like 5:escape 6:TOP 7:G ...
- pl/sql 笔记之基础(上)
由于公司中使用 oracle,而本人对存储过程一直也懵懵懂懂,故一周时间学习了一遍 pl/sql,在此记下笔记!!! 一.前提,pl/sql 是啥? 1.PL/SQL是一种高级数据库程序设计语言,该语 ...
- (2.2)【转】mysql的SQL笔记
一千行 MySQL 详细学习笔记 IT技术思维 4月1日 ↑↑↑点上方蓝字关注并星标⭐「IT技术思维」 一起培养顶尖技术思维 作者:格物 原文链接:https://shockerli.net/post ...
- sql 笔记(mysql)
Windows 安装mysql(zip包) 1,zip包解压到要安装目录 2,配置环境变量,Path后加mysql路径\bin 3,修改配置文件,mysql目录下my-default.ini base ...
- 深入浅出SQL笔记1–数据和表
1.数据库的概念及组成 数据库是保存表和其他相关SQL结构的容器. 数据库是由各种各样的表构成的,一个数据库里面的表总是存在相互联系的关系. 数据库内的信息组成了表,表示由行和列构成的,行是一组能够描 ...
- SQL笔记 - 解决CTE定位点类型和递归部分的类型不匹配
在CTE递归测试,也就是部门名称拼接的时候,遇到了小问题: 登时就迷糊了:不都是取的是Unit表中的同一个列,相加之后类型就变了么? 难道是因为,系统知道这是在进行递归运算,但又不确定递归的层次,以及 ...
- SQL笔记----在一个关系表中操作列
使用alter关键字,可以为一个表添加新的列. 比如: 给Persons的表中添加一列,名字为Birthday,类型是date. ALTER TABLE Persons ADD Birthday da ...
随机推荐
- springmvc 配置多视图,返回jsp,velocity,freeMarker,tiles(模板)等等
springmvc-servlet.xml配置 <!-- Velocity --> <bean id="velocityViewResolver" class = ...
- 2014 ICPC---Relief grain(树链剖分)
原题链接 Problem Description The soil is cracking up because of the drought and the rabbit kingdom is fa ...
- 用java实现新浪爬虫,代码完整剖析(仅针对当前SinaSignOn有效)
先来看我们的web.xml文件,如下 <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application ...
- 几个简单的js正则验证
//校验身份证,身份证分为15位和18位 function checkIdCard(obj) { if ((/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.tes ...
- python tornado websocket 多聊天室(返回消息给部分连接者)
python tornado 构建多个聊天室, 多个聊天室之间相互独立, 实现服务器端将消息返回给相应的部分客户端! chatHome.py // 服务器端, 渲染主页 --> 聊天室建立web ...
- python 学习笔记7(装饰器)
闭包(closure)是函数式编程的重要的语法结构. 定义:如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包(closure). def outer ...
- MOSOS基础(转自树人云)
发现 话题 · · · 登录 注册 MesosDocker 回顾Java 发展,看 Docker 与Mesos 演讲嘉宾数人云COO 谢乐冰在德国工作十年,回国后加入惠普电信运营商部门,拥有多年项 ...
- CAS客户端服务器端配置步骤
来自我的个人网站:http://lkf.22web.org/ cas介绍: CAS 是 Yale 大学发起的一个开源项目,旨在为 Web 应用系统提供一种可靠的单点登录方法,CAS 在 2004 年 ...
- windows 7/10下安装oracle 10g
有段时间没搞oracle了,最近要给别人在win 7下装个oracle 10g,特记录备忘下. 使用http://download.oracle.com/otn/nt/oracle10g/10201/ ...
- 我最常用的几个Xcode快键键
⌘(command) ⏎(return) ⌥(option/alt) ⇧(shift) ⌃(control/ctrl) 快速打开文件 ⌘ + ⇧ + O(字母) 快速搜索文本 ⌘ + ⇧ + F 分栏 ...