方案一

exec sp_executesql N'
SELECT T0.[WtmCode], T3.[opCode], T3.[opValue], T3.[CondId]
FROM [dbo].[OWTM] T0 INNER JOIN [dbo].[WTM1] T1 ON T1.[WtmCode] = T0.[WtmCode]
INNER JOIN [dbo].[WTM3] T2 ON T2.[WtmCode] = T0.[WtmCode]
INNER JOIN [dbo].[WTM4] T3 ON T3.[WtmCode] = T0.[WtmCode]
WHERE T1.[UserID] = (@P1) AND T2.[TransType] = (@P2) AND T3.[CondId] = (@P3)
AND T0.[Conds] = (@P4) AND T0.[Active] = (@P5) '
,N'@P1 int,@P2 nvarchar(254),@P3 int,@P4 nvarchar(254),@P5 nvarchar(254)',1,N'17',1,N'Y',N'Y'

方案二

IF @UserCmpType='D'
BEGIN
SET @sameContent='FROM dmsSaleOPORPJD T1 '
SET @sameContent2='FROM dmsSaleOPORPJD1 T1 '
SET @sameContent3='FROM dmsSaleOPORPJD2 T1 '
SET @sameContent4='FROM dmsSaleOPORPJD3 T1 '
END ELSE IF @UserCmpType='R'
BEGIN
SET @sameContent='FROM dmsSaleOPORPJR T1 '
SET @sameContent2='FROM dmsSaleOPORPJR1 T1 '
SET @sameContent3='FROM dmsSaleOPORPJR2 T1 '
SET @sameContent4='FROM dmsSaleOPORPJR3 T1 '
END IF @ActionGroup='Approval'
BEGIN
SET @sameContent1='T1.APPStatus=''正在审批'''
END ELSE IF @ActionGroup='ToDelivery'
BEGIN
SET @sameContent1='T1.APPStatus=''已通过'' AND T1.[Status]=''待发货'''
END IF @ActionType='Main'
BEGIN
SET @SQL='
SELECT
T1.ID [Id]
,T1.DOCENTRY [DocEntry]
,T1.CardName [CardName]
,CONVERT(NVARCHAR(10),T1.DocDay,23) [DocDay]
,convert(decimal(18,2),T1.RecDocTotal) [RecDocTotal]
,CASE ISNULL(T1.ShipAddress,'''') WHEN '''' THEN T1.CollectLogistics
ELSE T1.ShipAddress END [ShipAddress]
'+@sameContent+'
WHERE '+@sameContent1+'
AND T1.CmpCode=@UserCmpCode
ORDER BY T1.DocDay ASC
'
END
EXEC SP_EXECUTESQL @stmt=@SQL,@params=N'@ActionGroup NVARCHAR(50),@UserCmpCode NVARCHAR(50),@Id INT'
,@ActionGroup=@ActionGroup,@UserCmpCode=@UserCmpCode,@Id=@Id

标注的SQL拼接语句的更多相关文章

  1. 巧用SQL拼接语句

    前言: 在日常数据库运维过程中,可能经常会用到各种拼接语句,巧用拼接SQL可以让我们的工作方便很多,达到事半功倍的效果.本篇文章将会分享几个日常会用到的SQL拼接案例,类似的SQL还可以举一反三,探索 ...

  2. sql 针对拼接语句的优化

    在日常的开发中尽量少采用拼接语句,但针对多条件联合查询,并有多字段可以偏序的情况下,的确采用拼接语句要方便简单得多,单数据库会因为传入的参数不同而产生不同的计划数,计划数多了,对数据库影响很大. 为了 ...

  3. sql查询语句时怎么把几个字段拼接成一个字段

    sql查询语句时怎么把几个字段拼接成一个字段SELECT CAST(COLUMN1 AS VARCHAR(10)) + '-' + CAST(COLUMN2 AS VARCHAR(10) ...) a ...

  4. MySQL中limit使用动态参数的解决方法(拼接SQL字符串语句来执行SQL)

    官方好像说过limit已经在5.6版本上支持了动态参数,但是测试时依然还是不行. 那么要解决limit动态参数唯一能做的就是使用字符串SQL拼接的形式,然后再进行执行. 一般有以下方式解决: 1.存储 ...

  5. Mybatis.net与MVC入门配置及联合查询动态SQL拼接和简单事务

    第一次学习Mybatis.net,在博客园也找到好多资料,但是在配置成功之后也遇到了一些问题,尤其是在动态SQl拼接时候,这里把遇到的问题还有自己写的一个Demo贴出来,希望能帮到新手,有不适合的地方 ...

  6. SQL拼接方法

    smark Beetle可靠.高性能的.Net Socket Tcp通讯组件 另类SQL拼接方法 在编写SQL的时候经常需要对SQL进行拼接,拼接的方式就是直接String+处理,但这种情况有个不好的 ...

  7. SQL语法语句总结

    一.SQL语句语法 ALTER TABLE ALTER TABLE 用来更新已存在表的结构. ALTER TABLE tablename (ADD|DROP column datatype [NULL ...

  8. 另类SQL拼接方法

    在编写SQL的时候经常需要对SQL进行拼接,拼接的方式就是直接String+处理,但这种情况有个不好的地方就是不能对SQL进行参数化处理.下面介绍一种就算基于String +的方式也可以进行SQL参数 ...

  9. ibatis Dynamic总结(ibatis使用安全的拼接语句,动态查询)

    ibatis中使用安全的拼接语句,动态查询,ibatis比JDBC的优势之一,安全高效 说明文字在注释中 一.引入 一个小例子  <select id="selectAllProduc ...

随机推荐

  1. 记录一下对swiper4.x.js在H5单页中的滑动优化

    应用场景 仅仅应用于单页应用的滑动操作,用swiper4.x接管页面的滚动操作.用来支持顶部和尾部的回弹效果,进一步来支持常见那种下拉刷新动画效果.不适用于轮播图那种应用场景. 虽然只是针对swipe ...

  2. Tomcat(一):背景知识和安装tomcat

    Tomcat系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html 1. 基础背景知识 1.1 java和jdk概念 无论是何种程序,要能在计算机 ...

  3. 使用 Mutex 实现进程间同步

    我们知道 Mutex 互斥量是可以用在线程间同步的,线程之间共享进程的数据,mutex 就可以直接引用.而进程有自己独立的内存空间,要怎样将它应用在进程间同步呢?为了达到这一目的,可以在 pthrea ...

  4. 解决Manjaro Linux无法安装搜狗拼音

    更新:Manjaro 18.0rc1及更新版本不再需要本文的操作,可直接成功安装sogoupinyin 最近喜欢上了arch,然而遗憾的是没有太多时间用来折腾,所以选择了manjaro. 然而在安装s ...

  5. EF 事务(转载)

    事务简单用法 文章一:https://www.cnblogs.com/wujingtao/p/5407821.html 1EF事务 事务就是确保一次数据库操作,所有步骤都成功,如果哪一步出错了,整个操 ...

  6. EF怎样实现ORM思想的(转载)

    EF简介 实体框架(Entity Framework)简称EF,是微软以ADO.NET为基础所发展出来的对象关系对应(O/R Mapping)解决方案.是ADO.NET中的一组支持开发面向数据的软件应 ...

  7. 【Linux命令】ps命令

    ps命令介绍 用于报告当前系统的进程状态.可以搭配kill指令随时中断.删除不必要的程序. ps命令是最基本同时也是非常强大的进程查看命令,使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结 ...

  8. Async/Await是这样简化JavaScript代码的

    译者按: 在Async/Await替代Promise的6个理由中,我们比较了两种不同的异步编程方法:Async/Await和Promise,这篇博客将通过示例代码介绍Async/Await是如何简化J ...

  9. Phaser.js之简单的跑酷游戏

    采用的物理引擎是Phaser.js 官网地址:http://phaser.io/ 在这里对此引擎不做过多介绍(因为我也是小白,嘿嘿) 效果展示: 源码(详细源码图片资源可点击文章下方或屏幕右上方的gi ...

  10. Java环境变量搭建

    安装JDK开发环境 jdk下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk10-downloads-4416644.h ...