sql server存储过程的笔记记录
来源:互联网 发布:红警2共和国之辉mac版 编辑:程序博客网 时间:2024/05/10 00:16
1·测试代码,自我记录知识点方便回忆应用
USE [AIS20111111172448]//数据库的名称
GO/****** Object: StoredProcedure [dbo].[aaaamyfirst] Script Date: 03/15/2017 10:22:16 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[aaaamyfirst]//创建你的存储过程名 PROCEDURE 可选择执行是否需要参数
@fbillno varchar(20)=null,
@fname nvarchar(20)=null,
@starttime datetime=null,
@endtime datetime=null
AS
BEGIN
declare @sql varchar(2000)//注意这边的长度问题,有时候可选择print全部的select语句,看看是不是长度不够而引起报错
declare @addsql varchar(1000)
set @sql='Select
a.FBillNo as 销售订单编号,
kh.FName as 客户名称,
a.FDate as 订单日期,
yw.FName as 业务员,
wl.FNumber as 产品代码,
wl.FName as 产品名称,
wl.FModel as 规格型号,
mu.FName as 单位,
b.FAuxQty as 订单数量,
sum(te.FQty) as "发货申请数量(累计)",
sum(c.FAuxQty) as "发货通知数量(累计)",
sum(te.FAmount) as "发货申请金额(累计)",
sum(c.FAmount) as "发货通知金额(累计)"
FROM SEOrder a
inner join SEOrderEntry b on a.FInterID=b.FInterID
inner join t_BOS250000001Entry2 te on te.FID_SRC=b.FInterID
and te.FEntryID_SRC=b.FEntryID//两表多个匹配对象可以用and继续连接
left join t_Organization kh on kh.FItemID=a.FCustID
left join t_Emp yw on yw.FItemID=a.FEmpID
left join t_ICItem wl on wl.FItemID=b.FItemID
left join t_MeasureUnit mu on mu.FItemID=b.FUnitID
left join SEOutStockEntry c on c.FInterID=b.FInterID
where 1=1'
set @addsql=' '
end
if (@fbillno is not null)
BEGIN
set @addsql=@addsql+' and a.FBillNo=''' +@fbillno + ''''
END
if (@fname is not null)
BEGIN
set @addsql=@addsql+' and kh.FName='''+@fname + ''''
END
if (@starttime is not null)
BEGIN
set @addsql=@addsql+' and a.FDate>='''+convert(varchar(20),@starttime,120) + ''''
print @addsql
END
if (@endtime is not null)
BEGIN
set @addsql=@addsql+' and a.FDate<='''+convert(varchar(20),@endtime,120) + ''''//拼接时遇到报错,要将字符串包裹在‘’中注意引号规则
print @addsql
END
BEGIN
set @sql=@sql+@addsql+' group by a.FBillNo ,//多表操作用到了函数后,最后需要进行group操作
kh.FName ,
a.FDate ,
yw.FName ,
wl.FNumber ,
wl.FName ,
wl.FModel ,
mu.FName ,
b.FAuxQty'
exec(@sql)//exec()放一个变量执行
end
0 0
- sql server存储过程的笔记记录
- sql server存储过程笔记
- 记录我第一次写sql server 2005的存储过程
- SQL Server 存储过程返回记录集
- sql server存储过程学习记录
- sql server 2008 存储过程排序记录
- SQL Server学习记录之存储过程
- sql server 存储过程中获取另一个存储过程返回的记录集
- SQL Server 2008存储过程中使用另一个存储过程返回的记录集
- SQL Server的存储过程
- sql server的存储过程
- sql server的存储过程
- Sql Server笔记之存储过程
- SQL SERVER 存储过程学习笔记
- SQL SERVER 存储过程学习笔记
- SQL SERVER 存储过程学习笔记
- SQL SERVER 存储过程学习笔记
- Sql server存储过程以及一次插入多条记录
- Java 8 Optional 类 学习
- RabbitMQ学习 .NET Client之RPC
- java反射机制
- 通话距离感应实现源码
- 【大数据新手上路】“零基础”系列课程--Flume收集网站日志数据到MaxCompute
- sql server存储过程的笔记记录
- ReentrantLock 和 Synchronized对比
- 你的Android应用程序可以阻止泄漏内存的八种方式
- iOS开发
- 瑞利分布
- 判断用户名是否正确
- 浅谈设置父元素透明度不影响子元素透明度
- Linux中目录文件的权限及其对应的操作
- Btree索引详解