1、如何连接本地数据库

-- string Info = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\PhysicalAssetDB.mdf;Integrated Security=True";
string Info = @"Server=(LocalDB)\MSSQLLocalDB;AttachDbFileName=|DataDirectory|\PhysicalAssetDB.mdf;Integrated Security=SSPI;";
SqlConnection _myConn = new SqlConnection(Info);
_myConn.Open();

2、如何获取新插入的数据的ID

string sql += " SELECT SCOPE_IDENTITY() AS 'maxid';";//sql为原先的数据库插入语句,注意在加这个语句前不要有分号
SqlCommand mycom = null;
if (_IsTransaction)
mycom = new SqlCommand(sql, _myConn, _mytran);
else
mycom = new SqlCommand(sql, _myConn);
object num = mycom.ExecuteScalar();
int insertID = (int)num;
mycom.Dispose(); mycom = null;

3、时间戳转日期格式

SELECT DATEADD(S,1478577120,'1970-01-01 08:00:00');

dateadd函数将某个日期加上一个特定的时间间隔值后返回datetime数据类型的值。

dateadd (datepart,numer,date数据);

numer:用于与detepart相加的值。如果指定了非整数值,则将舍弃该值的小数部分。

date数据:一个用于解析为time、date、smalldatetime、datetime、datetime2、或datetimeoffset值的表达式、列表达式、用户定义的变量或字符串文字。

datepart:时间部分。下节。

select getdate()    --输出 2013-03-09 16:03:59.293
select dateadd(YYYY,10,getdate()) --加了十年 输出2023-03-09 16:04:36.893

4、日期格式转时间戳

SELECT DATEDIFF(S,'1970-01-01 08:00:00', '2017-03-23 09:04:48');

datediff函数将两个特定的日期数据相减,得到的结果可以按照detepart指定的格式返回特定的数据。

datediff(datepart,startdate,enddate)

执行中将使用enddate减以startdate的值,如果startdate晚于enddate将返回负值。执行结果如果超出整数范围将提示错误。

startdate:一个可以解析为time、date、smalldate、datetime、datetime2或datetimeoffset值的表达式、列表达式、用户定义的变量或字符串文字。

enddate:一个可以解析为time、date、smalldate、datetime、datetime2或datetimeoffset值的表达式、列表达式、用户定义的变量或字符串文字。

datepart:时间部分,下节。

select datediff(YYYY,'2011-11-11','2012-12-12')    --输出1 年份相减之后的确是1
select datediff(day,'2011-11-11','2012-12-12') --输出 397 两个日期相差的天数
select * from test where datediff(day,Rq,getdate()) = 0 --其中Rq为日期列,此行代码的意思是什么呢?getdate()减去Rq列的值为0,Rq列的值与今天相减,号数为0  

5、获取系统当前日期时间

SELECT GETDATE(),GETUTCDATE(),YEAR(GETDATE()),MONTH(GETDATE()),DAY(GETDATE());

6、获取任意时间部分DatePart

datepart( datepart , date数据 );
-- datepart:特定的要返回的数据的格式代码。
-- date数据:一个可以解析为time、date、smalldatetime、datetime、datetime2或者datetimeoffset值的表达式、列表表达式、用户定义的变量或字符串文字。

Datepart取值

Datepart部分的取值如下表所示:

说明 取值
返回年度信息 Year、YYYY、YY
返回月份信息 Month、MM、M
返回日期信息 Day、DD、D
返回周信息 Week、WK、WW
返回每周星期几信息 WeekDay、DW
返回季度信息 Quarter、QQ、Q
返回一年中第几天的信息 DayOfYear、DY、Y
返回小时信息 Hour、HH
返回分钟信息 Minute、MI、N
返回秒信息 Second、SS、SS
返回毫秒信息 MillSecond、MS

SELECT DATENAME(Quarter,GetDate()); -- 输出 2(6月)
SELECT DATEPART(Quarter,GetDate()); -- 输出 1 现在是第几季度

7、时间格式转字符串

--Style=101时,表示日期字符串为:mm/dd/yyyy格式

SELECT CONVERT(datetime,'11/1/2003',101)
--结果:2003-11-01 00:00:00.000 SELECT CONVERT(varchar,'2003-11-01 00:00:00.000',101)
--结果:01/11/2003

下面列举下所有格式

0 Feb 22 2006 4:26PM 1 02/22/06
2 06.02.22 3 22/02/06
4 22.02.06 5 22-02-06
6 22 Feb 06 7 Feb 22, 06
8 16:26:08 9 Feb 22 2006 4:26:08:020PM
10 02-22-06 11 06/02/22
12 060222 13 22 Feb 2006 16:26:08:020
14 16:26:08:037 20 2006-02-22 16:26:08
20 2006-02-22 16:26:08 21 2006-02-22 16:26:08.037
22 02/22/06 4:26:08 PM 23 2006-02-22
24 16:26:08 25 2006-02-22 16:26:08.037
100 Feb 22 2006 4:26PM 101 02/22/2006
102 2006.02.22 103 22/02/2006
104 22.02.2006 105 22-02-2006
106 22 Feb 2006 107 Feb 22, 2006
108 16:26:08 109 Feb 22 2006 4:26:08:067PM
110 02-22-2006 111 2006/02/22
112 20060222 113 22 Feb 2006 16:26:08:067
114 16:26:08:067 120 2006-02-22 16:26:08
121 2006-02-22 16:26:08.080 126 2006-02-22T16:26:08.080
127 2006-02-22T16:26:08.080 130 24 ???? 1427 4:26:08:080PM
131 24/01/1427 4:26:08:080PM    

8、获取数据分组后每组的最后一条数据

ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)

row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)

SELECT *, Row_Number() OVER (partition by deptid ORDER BY salary desc) rank FROM employee

C# VS本地Sqlserver 操作笔记的更多相关文章

  1. SQLServer学习笔记系列6

    一.写在前面的话 时间是我们每个人都特别熟悉的,但是到底它是什么,用什么来衡量,可能很多人会愣在那里.时间可以见证一切,也可以消磨一切,那些过往的点点滴滴可思可忆.回想往年清明节过后,在家乡的晚上总能 ...

  2. SQLServer学习笔记系列5

    一.写在前面的话 转眼又是一年清明节,话说“清明时节雨纷纷”,武汉的天气伴随着这个清明节下了一场暴雨,整个城市如海一样,朋友圈渗透着清明节武汉看海的节奏.今年又没有回老家祭祖,但是心里依然是怀念着那些 ...

  3. SQLServer学习笔记系列2

    一.写在前面的话 继上一次SQLServer学习笔记系列1http://www.cnblogs.com/liupeng61624/p/4354983.html以后,继续学习Sqlserver,一步一步 ...

  4. SQLServer学习笔记<>相关子查询及复杂查询

    二.查询缺少值的查询 在这里我们加入要查询2008年每一天的订单有多少?首先我们可以查询下订单表的订单日期在2008年的所有订单信息. 1 select distinct orderdate,coun ...

  5. SQLServer 学习笔记之超详细基础SQL语句 Part 7

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 6------------------- 29 存储过程和触发器 存储过 ...

  6. SQLServer 学习笔记之超详细基础SQL语句 Part 5

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 4------------------- 21使用默认 默认(也称默认值 ...

  7. SQLServer 学习笔记之超详细基础SQL语句 Part 4

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 3------------------- 17 带比较运算符的嵌套查询 ...

  8. SQLServer 学习笔记之超详细基础SQL语句 Part 3

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 2------------------- 13. 使用compute对查 ...

  9. SQLServer学习笔记系列3

    一.写在前面的话 今天又是双休啦!生活依然再继续,当你停下来的时候,或许会突然显得不自在.有时候,看到一种东西,你会发现原来在这个社会上,优秀的人很多,默默 吃苦努力奋斗的人也多!星期五早上按时上班, ...

随机推荐

  1. java中你确定用对单例了吗?

    作为程序员这样的特殊物种来说,都掌握了一种特殊能力就是编程思想,逻辑比較慎重,可是有时候总会忽略到一些细节,比方我,一直以来总认为Singleton是设计模式里最简单的,不用太在意,然而就是由于这样的 ...

  2. 【驱动笔记11】使用DeviceIoControl通信

    文章作者:grayfox作者主页:http://nokyo.blogbus.com原始出处:http://www.blogbus.com/nokyo-logs/34018521.html 在我昨日发布 ...

  3. struts2每次访问都会创建一个新的session

    1.第一次 项目在测试过程中,突然发现登陆之后再去访问其他菜单时都会提示未登录: 查看日志之后发现是因为很多次请求时都会自动创建一个新的session,这就费解了, 因为之前也没改动什么session ...

  4. Unix lrzsz命令 上传本地文件到服务器 / 发送文件到客户端

    第三方教程:https://www.jb51.net/article/73690.htm 安装命令: $ yum install lrzsz 本地上传文件到服务器,如果是xshell,直接拖拽文件进入 ...

  5. (Apache)ab 压力测试 简单使用

    该工具在Apache安装目录的bin目录里面.所以想要这个使用这个工具,只需要下载Apache即可.在Window环境下,推荐使用 PhpStudy 工具的集成环境.就可以轻松拥有Apache.ab压 ...

  6. 江南白衣 Java性能优化PPT

    会后江南白衣花费数日整理PPT,到1.4版本共66页,内容翔实且旁征博引,不断校正且力求做到极致的匠艺精神值得尊敬! 技术大牛飒然Hang如是说到: “技术大神中,除了陈皓就是白衣了,四十岁还能钻研. ...

  7. 解决电脑需要切换IP带来的MySQL连接问题

    直接上代码: import socket #获取本机电脑名 myname = socket.getfqdn(socket.gethostname( )) #获取本机ip myip = socket.g ...

  8. RUBY Error: Please update your PATH to include build tools or download the DevKit

    出错的原因是安装XXXXX的时候,需要build tools,但系统中没有.出错信息中同时也给出了解决的法案: 1. 到 http://rubyinstaller.org/downloads/ 去下载 ...

  9. 《Effective Java》读书笔记三(类和接口)

    No13 使类和成员的可访问性最小化 要区别设计良好的模块与设计不好的模块,最重要的因素在于,这个模块对于外部的其他模块而言,是否隐藏其内部数据和其他实现细节.模块之间只通过它们的API进行通信,一个 ...

  10. [na]wireshark抓包排错-tcp.flags.reset

    这是以前处理无线portal问题时候的一个梗. 一 抓包思路-用抓包来解决问题 ,了解协议交互大概过程 ,抓包 抓包法则: .最小化原则,过滤到想要的最小数据,别忽略上下文数据包 .对比法, 正常的包 ...