今天收到一个需求,要改写一个报表的逻辑,当改完之后,再次运行,发现运行超时。因为特殊原因,无法访问客户的服务器,没办法查看sql的执行计划、没办法知道表中的索引情况,所以,尝试从语句的改写上来优化。一、原始语句如下:selectisnull(vv.customer_id,v.customer_id)ascustomer_id,isnull(vv.business_date,replace(v.business_date,'-',''))asbusiness_date,v.prod_id,v.sales,vv.visit_count,v.all_sal...
继续阅读 >
分类:union
2020
10-09
10-09
深入了解C++ 结构体(struct)与共用体(union)
编码运行环境:VS2017+Win32+Debug,Win32表示生成32bits的应用程序。结构体(struct)与共用体(union)是C语言中就已经存在的数据类型,C++对他们进行了扩充,最大的变化是允许在结构和公用体中定义成员函数。下面将通过实例讲解二者的特性和用法。1.struct以下是一个使用了结构体的C++程序。#include<iostream>usingnamespacestd;structRoom{intfloor;intNo;};structStudent{intage;intscore;Student(inta,int...
继续阅读 >
2020
09-24
09-24
简单了解MySQL union all与union的区别
union是对数据进行并集操作,不包括重复行,同时进行默认排序Unionall是对数据进行并集操作,包括重复行,不进行排序举例说明:创建数据库表:CREATETABLE`t_demo`(`id`int(32)NOTNULL,`name`varchar(255)DEFAULTNULL,`age`int(2)DEFAULTNULL,`num`int(3)DEFAULTNULL,PRIMARYKEY(`id`))ENGINE=InnoDBDEFAULTCHARSET=utf8;复制此表:CREATETABLE`t_demo_copy`(`id`int(32)NOTNULL,`name`varch...
继续阅读 >
2020
09-24
09-24
MySQL如何使用union all获得并集排序
项目中有时候因为某些不可逆转的原因使得表中存储的数据难以满足在页面中的展示要求。之前的项目上有文章内容的展示功能,文章分为三个状态待发布、已发布、已下线。他们在数据表中判断状态的字段(PROMOTE_STATUS)值分别为0、1、2。一开始的需求是文章只展示待发布和已发布,已发布排在待发布前面,并且两种状态下在根据自己的情况去排序。这样的实现比较简单,如下的orderby语句就可以实现了。orderbyPROMOTE_STATUSdesc,...
继续阅读 >
2020
09-24
09-24
C语言枚举(enum)和联合(union)实例分享
使用enum进行定义/*枚举类型演示*/#include<stdio.h>intmain(){enum/*季节*/{CHUN,XIA=5,QIU,DONG};printf("QIU是%d\n",QIU);}使用union联合进行定义/*联合演示*/#include<stdio.h>typedefunion{intval;floatfval1;}tmp;intmain(){tmputmp={0};printf("&(utmp.val)是%p\n",&(utmp.val));//所指向的地址是相同的printf("&(utmp.fval)是%p\n",&(utmp.fval1));}知识点扩展:枚举类型的定...
继续阅读 >
2014
11-07
11-07
MySQL入门教程7 —— 常用数据库查询的示例
下面是一些学习如何用MySQL解决一些常见问题的例子。在一些例子中,使用数据库表“shop”来储存某个商人(经销商)的每件物品(物品号)的价格。假定每个商人对每项物品有一个固定价格,那么(物品,商人)即为该记录的主关键字。启动命令行工具mysql并选择数据库:shell>mysqlyour-database-name(在大多数MySQL中,你可以使用test数据库)。你可以使用以下语句创建示例表:mysql>CREATETABLEshop( ->...
继续阅读 >