SQL 数据库 判断取数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL 数据库 判断取数相关的知识,希望对你有一定的参考价值。
求教高手,通过一个字段判断查询
当A等于1,显示B。A=0 显示C
当A等于1,显示B字段中的数值。A=0 显示C字段中的数值
A、B、C 均为 numeric类型
FROM TABLE追问
执行的时候 提示 从数据类型 varchar 转换为 numeric 时出错呢
追答既然是数字类型,不会出现VARCHAR 转 NUMERRIC ,你确定ABC类型都是NUMERIC么
本回答被提问者采纳sql 取周数
sql 里的一些函数可以实现,但是得出的是期天为一周的开始,星期六为一周结束,我想要的是按国人的长长星期一为一周开始,星期天为一周结束,望有人能助我。
谢谢大家,回答者: ytbelwxg -的可以,但是我用不上,先谢谢,回答者: simenyu不知道你那 set datefirst 1 会不会装整个库给改了。还是查询时临时改的,
如cast(dateadd(dd,1,getdate()) as int)/7-cast(dateadd(dd,1,'2009-1-1') as int)/7 参考技术A create function f_orderby (@date datetime)
returns int
as
begin
declare @i int,@order int
select @i=datepart(weekday,@date)
if @i=1
select @order=7
if @i=2
select @order=1
if @i=3
select @order=2
if @i=4
select @order=3
if @i=5
select @order=4
if @i=6
select @order=5
if @i=7
select @order=6
return @order
end
这个函数返回的值,星期一是第一天……,星期日是第七天,可以用来排序,我估计你应该是这个意思吧!
以上,希望对你有所帮助! 参考技术B SQL Server中,默认一周的第一天是星期日.
若要改变它,需要设置datefirst值.
如:set datefirst 1,则把星期一作为一周的第一天. 参考技术C DECLARE @Date DATETIME
SET @Date = GETDATE()
--星期一,取得你所设置日期的星期一
SELECT DATEADD(d,-(DATEPART(w,@Date)+@@DATEFIRST-2)%7,@Date)
--星期天
SELECT DATEADD(d,7,DATEADD(d,-(DATEPART(w,@Date)+@@DATEFIRST-1)%7,@Date)) 参考技术D select datepart(week,getdate()) a
以上是关于SQL 数据库 判断取数的主要内容,如果未能解决你的问题,请参考以下文章