C# VS本地Sqlserver 操作笔记
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 操作笔记的更多相关文章
- SQLServer学习笔记系列6
一.写在前面的话 时间是我们每个人都特别熟悉的,但是到底它是什么,用什么来衡量,可能很多人会愣在那里.时间可以见证一切,也可以消磨一切,那些过往的点点滴滴可思可忆.回想往年清明节过后,在家乡的晚上总能 ...
- SQLServer学习笔记系列5
一.写在前面的话 转眼又是一年清明节,话说“清明时节雨纷纷”,武汉的天气伴随着这个清明节下了一场暴雨,整个城市如海一样,朋友圈渗透着清明节武汉看海的节奏.今年又没有回老家祭祖,但是心里依然是怀念着那些 ...
- SQLServer学习笔记系列2
一.写在前面的话 继上一次SQLServer学习笔记系列1http://www.cnblogs.com/liupeng61624/p/4354983.html以后,继续学习Sqlserver,一步一步 ...
- SQLServer学习笔记<>相关子查询及复杂查询
二.查询缺少值的查询 在这里我们加入要查询2008年每一天的订单有多少?首先我们可以查询下订单表的订单日期在2008年的所有订单信息. 1 select distinct orderdate,coun ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 7
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 6------------------- 29 存储过程和触发器 存储过 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 5
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 4------------------- 21使用默认 默认(也称默认值 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 4
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 3------------------- 17 带比较运算符的嵌套查询 ...
- SQLServer 学习笔记之超详细基础SQL语句 Part 3
Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 2------------------- 13. 使用compute对查 ...
- SQLServer学习笔记系列3
一.写在前面的话 今天又是双休啦!生活依然再继续,当你停下来的时候,或许会突然显得不自在.有时候,看到一种东西,你会发现原来在这个社会上,优秀的人很多,默默 吃苦努力奋斗的人也多!星期五早上按时上班, ...
随机推荐
- Template Method - 模板方法模式
1.概述 在面向对象开发过程中,通常我们会遇到这样的一个问题:我们知道一个算法所需的关键步骤,并确定了这些步骤的执行顺序.但是某些步骤的具体实现是未知的,或者说某些步骤的实现与具体的环境相关.例子1: ...
- RGB(FFFFFF)转255:255:255
NSString *color = model.display_color; long colorLong = strtoul([color cStringUsingEncoding:NSUTF8St ...
- JavaScript之正則表達式入门
<html> <head><title>Js String 正則表達式</title><script>//边界符 js 中直接定义须要边界符 ...
- iOS学习笔记37-时间和日期计算
一.时间和日期计算 我们在应用开发中,时常须要和时间打交道,比方获取当前时间,获取两个时间点相隔的时间等等,在iOS开发中与时间相关的类有例如以下几个: 1. NSDate:表示一个绝对的时间点 2. ...
- 【Android】9.2 内置行视图的分类和呈现效果
分类:C#.Android.VS2015: 创建日期:2016-02-18 一.简介 Android内置了很多行视图模板,在应用程序中可直接使用这些内置的视图来呈现列表项. 要在ListView中使用 ...
- gitlab人备份与恢复
注意新建备份目录是:/usr/local/src/repositories 属主和属组: # ll -d repositories/ drwx------ git root Feb : reposit ...
- Mysql 中创建索引和索引的使用问题
在数据库中合理的使用索引是提升mysql数据库的一种高效和快捷的方式,但是在索引的使用上在我的使用中发现有很多坑,因为自己之前没有认识到,所以来总结一下 索引的介绍 索引是一种特殊的文件,其中包含着对 ...
- SpringCloud | FeignClient和Ribbon重试机制区别与联系
在spring cloud体系项目中,引入的重试机制保证了高可用的同时,也会带来一些其它的问题,如幂等操作或一些没必要的重试. 今天就来分别分析一下 FeignClient 和 Ribbon 重试机制 ...
- SimpleDateFormat转换时间,12,24时间格式
Date d = new Date(); SimpleDateFormat ss = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");//1 ...
- 一个div宽度不固定的左右居中效果
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...