当初由于数据库设计的有些不合理,有平常的查询很难达到想要的效果,就上网查找了临时表查询,然后进行拼接
BEGIN
–判断临时表是否存在删除临时存储表
IF OBJECT_ID(‘tempdb…#temp3’) IS NOT NULL
BEGIN
DROP TABLE #temp3;
END;
IF OBJECT_ID(‘tempdb…#temp2’) IS NOT NULL
BEGIN
DROP TABLE #temp2;
END;

–第一个临时表
SELECT BS_SetMealUser.SetMealUserID ,
BS_SetMealUser.MobileNewsMealID ,
MM_MobileNewsMeal.NewsNum
–将查询的数据放入临时存储表
INTO #temp3 --关键字,相当于把这一段的查询结果放入这个关键字
FROM BS_SetMealUser
JOIN MM_MobileNewsMeal ON BS_SetMealUser.MobileNewsMealID = MM_MobileNewsMeal.MobileNewsMealID
WHERE BS_SetMealUser.UserID = @UserID
AND BS_SetMealUser.ExpireTime >= GETDATE()
AND BS_SetMealUser.MobileNewsMealID != 0;
–第二个临时表

            SELECT  BS_SetMealUse.SetMealUserID ,ISNULL(SUM(BS_SetMealUse.NewsUseNum), 0) AS bbbINTO    #temp2--关键字,相当于把这一段的查询结果放入这个关键字FROM    BS_SetMealUseJOIN BS_SetMealUser ON BS_SetMealUser.SetMealUserID = BS_SetMealUse.SetMealUserIDWHERE   BS_SetMealUse.IsDelete = 0AND BS_SetMealUser.UserID = @UserIDGROUP BY BS_SetMealUse.SetMealUserID;SELECT  #temp3.SetMealUserID ,#temp3.MobileNewsMealID ,#temp3.NewsNum ,#temp2.SetMealUserID ,ISNULL(#temp2.bbb, 0) AS bbbFROM    #temp2

–根据相同的SetMealUserID 进行拼接
RIGHT JOIN #temp3 ON #temp2.SetMealUserID = #temp3.SetMealUserID
WHERE ISNULL(#temp2.bbb, 0) < #temp3.NewsNum;
END;

SQL数据库临时表创建和临时表拼接查询相关推荐

  1. hive SQL 创建数据库,创建hive表、查询时,其表名,字段,统统不区分大写(在底层一律转换为小写)

    hive SQL 创建数据库,创建hive表.查询时,其表名,字段,统统不区分大写(在底层一律转换为小写) (1).默认default数据库 hive默认自带一个名为default的数据库,如果建表时 ...

  2. azure云数据库_Microsoft Azure SQL数据库-分步创建教程

    azure云数据库 Microsoft Azure SQL Database is a managed cloud database for programmers/developers to dev ...

  3. mysql临时表创建_MySQL临时表创建

    和SQL SERVER 创建临时表不同 不能直接写 Create table #Test_Table 而是需要在 Create 和 table 之间 加入 TEMPORARY(temporary) 关 ...

  4. SQL数据库语言基础之SqlServer条件查询、排序数据表、like模糊查询【大总结】

    文章目录 一.语句查询数据(SELECT) 二.获取满足查询条件的语句(WHERE) 三.排序查询(ORDER BY) 四.高级条件查询 一.语句查询数据(SELECT) 1.在SSMS中查看数据 在 ...

  5. SQL数据库经典题型(1)查询“001“课程比“002“课程成绩高的所有学生的学号

    题目: 学生表:Student(S#,Sname,Sage,Ssex) ,学号:S#,学生姓名:Sname,学生年龄:Sage,学生性别:Ssex 课程表:Course(C#,Cname,T#),课程 ...

  6. SQL数据库语言基础之SqlServer分组查询总结

    文章目录 1.分组的概念 2.聚合函数与分组配合使用 3.查询数据的直方图(REPLICATE()) 4.排序分组结果(ORDER BY放在分组后面) 5.反转查询(CASE与分组的结合) 6.两个分 ...

  7. 【SQL数据库】数据库的创建、查询、插入等操作使用方法(结合黑皮书教材网站(db-book中的例子)在MySQL Workbench和shell中实现查询操作

    SQL 数据库的创建.查询.插入等操作使用方法(结合黑皮书教材网站中的例子) 注:数据来源: https://www.db-book.com/university-lab-dir/sample_tab ...

  8. azure云数据库_使用Azure SQL数据库构建ASP.NET应用

    azure云数据库 In this article, you will learn about Azure SQL Database and its uses. Then the article sp ...

  9. bluemix java_Bluemix 基础:将 SQL 数据库添加到您的 Java 应用程序中

    概述 学习如何在 Bluemix 上创建一个 SQL 数据库,并将其添加到您的 Java Web 应用程序中.探索一个数据驱动.动态生成的网络商店,该商店会根据当前库存水平来改变外观.使用基于 Web ...

最新文章

  1. else 策略模式去掉if_干掉if-else系列,可解决各种多分支嵌套,内联嵌套,复杂结构等,非策略模式的实现...
  2. 新手小白零基础搭建个人博客(二)Hexo搭建
  3. 【深度学习】深度学习预测房价:回归问题,K折交叉
  4. Flask扩展系列(八)–用户会话管理
  5. 6本书,读懂2022年最火的边缘计算
  6. 怎么修改远程服务器的地址,怎么修改远程服务器的地址
  7. Daily scrum 12.19
  8. keras图像风格迁移
  9. 手写数字识别神经网络,手写体识别 神经网络
  10. Linux排查CPU使用率100%
  11. 物流项目管理的团队建设 (zt)
  12. Chrome 书签你知道怎么导入吗(谷歌浏览器的书签保存在哪里 、谷歌浏览器书签保存在哪个文件夹)
  13. unity 移动开发优化二 图形优化,脚本优化概述
  14. 苹果在印度市场表现不佳 落后诺基亚三星RIM
  15. 用Python画中国地图,实现各省份数据可视化!可视化简直了!
  16. C语言知识-零零散散(三)
  17. 虚拟服务器 vmotion,VMotion简单步骤
  18. r5处理器_R5-4600H和i5-10400差距多大?
  19. 计算机考研英语一和英语二的区别,考研英语一和英语二的区别介绍
  20. 校园二手书pro(微信小程序运营版)

热门文章

  1. 浪潮 E5-2640V2/2.0*2 4G_DDR3L-1600 600G/SAS/10k/2.5*3
  2. 关于SNS社区与行业电子商务结合一些看法
  3. 《毛毛虫组》【Alpha】Scrum meeting 1
  4. 【C2M】C2M模式为中国制造提出了创新发展思路
  5. 贴吧怎么引流不会被屏蔽?让你避免陷入一些误区
  6. python多线程问题及生产者消费者示例
  7. 小程序对数组setData
  8. m基于随机接入代价的异构网络速率分配算法matlab仿真
  9. 【小波分析】连续小波变换的概念swt,cwt,dwt
  10. 如何快速学习知识和技能(非贩卖焦虑)