SQL函数调用
函数如下
CREATE FUNCTION StockBalance_AmountIn(@SortID int)
RETURNS numeric(18,4)
AS
BEGIN
Declare @dblReturn numeric(18,4)
Select @dblReturn = SUM(AmountCurrentMonthIn) from AT_Materiel_StockBalance Where SortID = @SortID
Return (@dblReturn)
END
调用方法
select dbo.StockBalance_AmountIn(2523)
这里头需要加dbo
=========================
表格变量
USE [mbmxdb]
GO
/****** Object: UserDefinedFunction [dbo].[uf_GetResearcherTable] Script Date: 04/23/2010 09:50:47 ******/
SET QUOTED_IDENTIFIER ON
GO
CREATE function [dbo].[uf_GetResearcherTable](@UserID varchar(50))
returns @t table(col varchar(50))
as
begin
declare @temp table (ID int IDENTITY (1, 1) NOT NULL , OrderRight varchar(10),Researcher varchar(50))
declare @ResearcherInfo varchar(50)
DECLARE @ID int
SET @ResearcherInfo=''
insert into @temp(OrderRight,Researcher)
( SELECT
RI.OrderRight as OrderRight,
(CASE WHEN RI.IsAnalyst=1 THEN '分析师'+':'+UserName
ELSE '联系人'+':'+UserName
END) as Researcher
from kinghing..vemployeeinfo_yjs Vyjs Inner Join
(
Select
DISTINCT MR.RelatedID,MR.OrderRight,MI.IsAnalyst,MR.Type,MR.NameFontStyle,MR.PhoneFontStyle,MR.EmailFontStyle,MR.Separator,Mi.CertificateID
from MBMXResearcherInfo MI Inner Join
(Select RelatedID,OrderRight,Type,NameFontStyle,PhoneFontStyle,EmailFontStyle,Separator from MBMXResearcherInfoReferNew where UserID=@UserID) MR
On MI.UserID=MR.RelatedID
) RI
On Vyjs.UserID=RI.RelatedID where Vyjs.userstatus <4
)
WHILE ((
相关文档:
今天,遇到了这样的一个例子:
SQL Server索引统计信息未及时更新,导致排序混乱
我们知道,在sql
server上创建索引后,同时会对该索引上的值进行排序,但对于新增加的值,如果未能及时更新统计信息,将有可能导致排序的混乱,也就是没有排序。
这是产生问题的语句:
Select * from V_L_IcStockProInEntry Where FInt ......
同一表多字段同时重复记录的SQL查询及处理数
比如现在有一人员表 (表名:peosons)
若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来
select p1.* from persons p1,persons p2 where p1.idp2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address ......
我安装的是sql server 2000四合一版本,正常途径直接安装是装不上的,要打什么SP3补丁,不要理它,打开安装包,里边有个MSDE目录,执行setup.exe,安装很顺利,装完之后是没有反应的,重启计算机,然后能看到sql server服务已经启动,这样,就可以正常安装了,执行安装包根目录下的安装程序,按提示一步 ......
某项目之前的数据库有变化,但是以前写的程序是支持老数据库的,新数据库有一些问题,需要修改,但是数据库就重复了,于是就要把开发机上之前的数据库重新命名。
这里记录一下步骤(旧名称:MobileMsg,新名称:MobileMsg_old):
1、关掉企业管理器,打开查询分析器;
2、修改数据库名称:
EXEC sp_dboption 'MobileMs ......