Heim >Datenbank >MySQL-Tutorial >sqlserver2008中自定义函数的问题

sqlserver2008中自定义函数的问题

WBOY
WBOYOriginal
2016-06-07 15:33:581155Durchsuche

数据库中有一个字段,数据类型为date,现在我想定义一个函数,输入参数为date类型,返回的数据为与输入参数相同年份和月份的数据行数,在函数体中使用了count函数。 create function [dbo].[Time](@times date) returns int as begin return( select COUNT(*

数据库中有一个字段,数据类型为date,现在我想定义一个函数,输入参数为date类型,返回的数据为与输入参数相同年份和月份的数据行数,在函数体中使用了count函数。

create function [dbo].[Time](@times date)
returns int
as
begin 
 return(

select COUNT(*)
 from Question
 where datediff(yy,PublishedTime,@times)=0

and DATEDIFF(mm,PublishedTime,@times)=0)
end
 使用语句为:

select dbo.Time('2012-12-20')

from Question

但是为题是查出来的结果数量为表Question中数据的行数。为什么会查询出那么多行的数据,而不是单一的一行数据?

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn