首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    求本年、本月、本周等数据

    是将星期日做为一周的第一天 即:datediff(week,'2003-07-27','2003-08-01')的值为0 如果你要求将星期一做为一周的第一天,就要用: select * from...select count(*) from [user] where datediff(week,create_day-1,getdate())=0 12.上周注册人数 select...(*) from [user] where datediff(month,create_day,getdate())=1 如果要效率,这样写查询 1.查询本周注册人数 select...,getdate(),112)) 2.上周注册人数 select count(*) from [user] where create_day>=dateadd(day,...)) - 1 网上取当月第一天和最后一天的SQL语句很多,有的是通过字符截取,有的是通过函数,个人还是比较偏向于使用内置函数来处理, 但是看了下网上的运用函数来取第一天和最后一天时间的SQL语句几乎都像下面这样的

    50010

    【T-SQL基础】01.单表查询-几道sql查询题

    (30 row(s) affected) 本题考察的是过滤日期范围 参考答案: 方案一:  如果要过滤日期范围(比如,整年或正月),比较自然的方法就是使用YEAR和MONTH之类的函数。...本题主要考察DATEADD和DATEDIFF的用法 DATEADD: 将指定 number 时间间隔(有符号整数)与指定 date 的指定 datepart 相加后,返回该 date。...如果 startdate 和 enddate 属于不同的日期数据类型,并且其中一个的时间部分或秒小数部分精度比另一个高,则另一个的所缺部分将设置为 0。...参考答案: 方案一: SELECT * FROM Sales.Orders WHERE MONTH(DATEADD(DAY,1,orderdate)) MONTH(orderdate) 方案二:...SELECT orderid, orderdate, custid, empid FROM Sales.Orders WHERE orderdate = DATEADD(month, DATEDIFF

    2K90

    那些年我们写过的T-SQL(上篇)

    此外,有一点曾经困扰了我很久,就是如果我在where字句中使用YEAR(orderdate),还在select中使用YEAR(orderdate),那样不是重复计算了?...关键字 解释与示例 BETWEEN, IN, LIKE BETWEEN AND表示属于什么之间;IN表示在枚举出来的几个值中;LIKE可以使用%作为万能替代符,主要注意的LIKE中默认使用的Unicode...字符类型默认最长(max)为8000个字符,若超过使用LOB存储,放在行外,此外数据在压缩(Data Compression)是会有一些变化。...时间日期函数看起来比较简单,但在实际的使用中,由于不同的时间格式,往往会让人非常的困扰,毕竟那么多的API使用起来选择比较多,这儿将最常见的罗列了出来。...之前提到外联接查询的结果包含内部行和外部行,如果我们想进一步将外部行或内部行剔除,那么就可以使用WHERE进行筛选,需要注意非保留表中的属性一定要选择非NULL属性,这时的查询真正对应到NULL占位符(

    3.2K100

    实用函数方法汇总

    EXISTS和IN之间的区别 你真的会玩SQL吗?无处不在的子查询 你真的会玩SQL吗?Case也疯狂 你真的会玩SQL吗?表表达式,排名函数 你真的会玩SQL吗?...冷落的Top和Apply 你真的会玩SQL吗?实用函数方法汇总 你真的会玩SQL吗?玩爆你的数据报表之存储过程编写(上) 你真的会玩SQL吗?...玩爆你的数据报表之存储过程编写(下) 实用函数方法 由于有些知识很少被用到,但真需要用时却忘记了又焦头烂额的到处找。 现在将这些‘冷门“却有效的小知识贡献出来,以备不时之需。...#tmpfee --select into不需要提前声明临时表#tmpfee from z_fee where RentGUID = @strRentGUID order by PayLimit...WHERE n + @rc <= @max; SELECT COUNT (n) FROM Nums 练习:将下面表1每行字符串转化为表2格式 /*PlanDetailID Description

    1.3K90

    优化SQLServer--表和索引的分区(二)

    );             GO 范围分区函数指定范围的边界,left和right关键字指定当数据库引擎按照剩余从左到右对区间值进行排序是,边界值属于那一边,默认为left。...                OrderName nvarchar(256) NOT NULL            ) on DailyPS(OrderDate)            GO 这里我们将分区函数映射到单个文件组里面...ph.tally AS t            WHERE N < = 2000; INSERT OrdersDaily(OrderDate, OrderName)             SELECT...ph.tally AS t            WHERE N < = 3000; INSERT OrdersDaily(OrderDate, OrderName)             SELECT...可以发现按照日期的分布产生了不同文件组的数据插入到了不同的文件里面和索引里面了。

    80760

    C#三十四 常用开发的部分总结

    params​ SqlParameter[] cmdParms) 12. { 13. } 如果只有一个数据库,则直接使用默认的无连接字符串参数的方法会比较简洁,当需要改变数据库时,只需要把不同的数据库连接字符串传进去就可以了...当然,我们可以把stringconString抽象出去,作为公共属性,在构造函数中被动态地传递进来,也可以支持不同数据的访问。例如: 1. // 2....SELECT DAY(DATEADD(dd, -DAY('2008-02-13'),DATEADD(mm, 1, '2008-02-13'))) 2....这样可以选择出column字段中首字母在A-M之间的记录 3. 2select * from tablename where column1 like '[ABC]%' 4....这样可以选择出column字段中首字母在A-C之间的或者是G的记录 7. 4select * from tablename where column1 like '[^C]%' 8.

    5710

    浅谈 T-SQL高级查询

    之前我们简单的了解了增、删、改、查这几类T-SQL语法来操纵数据表,但是为了更方便快捷地完成大量任务,SQL Server 提供了一些内部函数,可以和SQL Server 的SELECT语句来联合使用,...字符串之间使用“+”拼接 select '运维工程师' + '姓名'+'的基本工资是:'+ cast(基本工资 as varchar(10))+'元' from *表名* #“基本工资 as varchar...(10)”是将基本工资列的类型转换为字符串 where 职务='运维工程师' ?...例: 显示距离当前10天后的日期和时间: select dateadd (DD,10,getdate())#“getdate()”取得当前系统日期,DD:单位为日 ?...()) 年龄, DATEDIFF(DD,GETDATE(),DATEADD(YY,30,出生日期)) 距离三十岁的天数 from test where DATEDIFF(YY,出生日期,GETDATE

    1.7K30

    2-3 T-SQL函数

    实验: 字符串函数应用实验 --该部分函数主要解决各种字符串的处理问题 1、CHAR(数字变量) 功能:将ASC码转换成为字符串; --注意:ASC码是指0——255之间的整数 例子:select char...例如:SELECT SUBSTRING('我是玉树临风的高狗熊',3,4) 6、CAST与CONVERT函数 功能:实现数据的格式转化;将某种数据类型的表达式显式转换为另一种数据类型。...依据此函数,一些行可能取得和其他行一样的序列值。如果两个或多个行与一个排名关联,则每个关联行将得到相同的排名。例如,如果两位顶尖销售员具有同样的SalesYTD(销售额)值,他们将并列第一。...salary,结果如图2-7所示,读者可以比较图2-6和图2-7所示的查询结果有什么不同。...=dbo.用户自定义函数(输入参数) 与Execute执行函数不同的是,通过SELECT语句执行函数的时候,必须加上dbo用户,否则会出现语法错误。

    1.5K10

    sql server实现自定义分割月功能

    例如:如果指定分割月的开始日索引值为5则表示某个月的5号到下个月的4号之间作为一个完整的分割月;同样地如果指定分割月的开始日索引值为1则表示标准月等等。...我仔细梳理了这个函数进行了重构简化以及扩展,该自定义分割月函数的实现区别之前写的SQL Server时间粒度系列----第3节旬、月时间粒度详解文章中将一个整数值和月份日期相互转换功能,这个是按照标准月来实现的...,虽然思路大致相同,但是并没有针对之前的月份日期和整数值转换函数对来进行扩展而是独立开发新的功能函数。...2、sql server实现自定义分割月功能 自定义分割月功能函数包括两个标量函数:ufn_SegMonths和ufn_SegMonth2Date。...[CDate], 28) AS SegMonths FROM ( SELECT DATEADD(DAY, [Num], @dtmStartDate)

    1.2K60

    探索SQL Server元数据(一)

    对于不同的关系型数据库之间的处理工作这个架构尤其重要。它们非常适合日常工作,例如在访问钱检查是否存在,但是如果需要详细报告则会受到限制。...之前看到MSDN上有人警告说不要使用INFORMATION_SCHEMA视图来确认对象架构,我理解是因为SQL Server允许在不同的架构中有相同的表名字,因此当只有表名称的时候会有混淆。...元数据视图和函数允许执行几乎不可能执行的操作,例如查找依赖于指定的CLR用户定义类型或别名类型的参数。 我是如何逐渐使用的?...如果它是一个用来保存注释或片段的工具,可以让您在任何地方轻松地获取查询,那么它将会有所帮助。一段时间后,就可以根据使用需要对这些查询稍作修改。...obj WHERE create_date > dateadd(month,-1, GetDate()); --DBO架构中所有基本对象的名称和类型 SELECT coalesce(object_schema_name

    91920

    好的数据库面试题集合

    所谓传递函数依赖,指的是如果存在"A → B → C"的决定关系,则C传递函数依赖于A。...由于存在这种排序,所以每个表格只会有一个聚集索引。非聚集索引在索引的叶级有一个行标识符。它允许每个表格有多个非聚集索引。 ² 什么是主键?什么是外键?...外键是一个用来建立两个表格之间关系的约束。这种关系一般都涉及一个表格里的主键字段与另外一个表(可能是同一表)里的字段。那么这些相连的字段就是外键。 ² 什么是触发器?...SQL Server 2000有什么不同类型的触发器? 有INSTEAD-OF和AFTER两种触发器。触发器是一种专用类型的存储过程,它被捆绑到表格或者视图上。...查询选修课程超过5门的学员学号和所属单位 -- 关注having子句中的count()等聚合函数的使用 Select SN,SD FROM S Where [S#] IN( Select [S#] FROM

    1.8K10
    领券