mysql查询一个表的字段,添加或修改到另外一个表的数据
DELIMITER $$ USE `topsale`$$ DROP PROCEDURE IF EXISTS `sale_proce`$$ CREATE DEFINER=`root`@`%` PROCEDURE `sale_proce`(IN countryList VARCHAR() ,IN beg VARCHAR(),IN endd VARCHAR())
BEGIN
DELETE FROM sale_record WHERE country_id IN(countryList) AND datadate BETWEEN beg AND endd;
INSERT INTO sale_Record(branch_model,hq_model,line,size,spec,country_id,center,country,datadate,saleQty)
SELECT t.branch_model,t.hq_model,t.product_line,t.size,t.PRODUCT_SPEC_ID,pa.`COUNTRY_ID`,center.PARTY_NAME center,coun.`PARTY_NAME` country,
DATE_FORMAT(t.`datadate`,'%Y-%m-01') DATE,COALESCE(SUM(t.`h_quantity`),0) saleQty
FROM vive_tv_sale t
JOIN shop_info si ON si.`SHOP_ID`=t.`shop_id` AND si.flag=0
JOIN party pa ON pa.`PARTY_ID`=si.`PARTY_ID` AND pa.flag=0
JOIN (SELECT * FROM party) coun ON coun.party_id=pa.country_id
JOIN (SELECT * FROM party) center ON center.party_id=coun.PARENT_PARTY_ID
WHERE pa.country_id IN(countryList)
AND t.datadate BETWEEN beg AND endd
GROUP BY pa.`COUNTRY_ID`,t.model,DATE_FORMAT(t.`datadate`,'%Y%m')
ORDER BY center.PARTY_NAME,coun.`PARTY_NAME`,DATE_FORMAT(t.`datadate`,'%Y%m');
END$$ DELIMITER ;
UPDATE vive_tv_sale vts,
(SELECT a.id, pa.`COUNTRY_ID`,pa.`PARTY_ID`,si.`SHOP_ID`,tm.`hq_model`,tm.`branch_model`,
pr.`product_line`,pr.`size`,pr.`PRODUCT_SPEC_ID`
,co.all_products_coefficient coeff
,'',si.`CUSTOMER_ID` FROM vive_tv_sale a,shop_info si,party pa,t_modelmap tm,product pr ,`coefficient` co
WHERE a.shop_id=si.shop_id
AND a.model=tm.branch_model
AND si.`PARTY_ID` = pa.`PARTY_ID`
AND co.`country` = pa.`COUNTRY_ID`
AND tm.`party_id` = pa.`COUNTRY_ID`
AND pr.`head_type_id` = 1
AND a.country=#{country}
AND a.datadate BETWEEN #{beginDate} AND #{endDate}
AND tm.`hq_model` = pr.`PRODUCT_model`
AND si.flag = 0
AND pa.flag = 0
AND tm.flag = 0
AND pr.flag = 0) v_sl SET
vts.`country_id` = v_sl.COUNTRY_ID
,vts.`party_id` = v_sl.PARTY_ID
,vts.`hq_model` = v_sl.hq_model
,vts.`branch_model` = v_sl.branch_model
,vts.`product_line` = v_sl.product_line
,vts.`size` = v_sl.size
,vts.`PRODUCT_SPEC_ID` = v_sl.PRODUCT_SPEC_ID
,vts.`coe_quan` = vts.`quantity` / v_sl.coeff
,vts.`coe_amou` = vts.`amount` / v_sl.coeff
,vts.`h_coe_quan` = vts.`quantity` /v_sl.coeff
,vts.`h_coe_amou` = vts.h_amount /v_sl.coeff
,vts.`customer_id` = v_sl.CUSTOMER_ID
,vts.`country` = v_sl.COUNTRY_ID
,vts.`flag`=
WHERE flag=
AND v_sl.id=vts.id
AND vts.country=#{country}
AND vts.datadate BETWEEN #{beginDate} AND #{endDate}
mysql查询一个表的字段,添加或修改到另外一个表的数据的更多相关文章
- mysql查询order by 指定字段排序
当MySQL查询时排序的字段不是数字时而是汉字的时候也可以用when then 来指定排序. 列如yewu_check表的status 字段不是0,1,2而是汉字待办,已办,退回.可以如下写法: S ...
- Mysql查询用逗号分隔的字段-字符串函数FIND_IN_SET(),以及此函数与in()函数的区别
查询用逗号分隔的字段,可以用字符串函数FIND_IN_SET(): 查询数据库表中某个字段(值分行显示),可以用函数in(). 今天工作中遇到一个问题,就是用FIND_IN_SET()函数解决的. 第 ...
- [转]Sql Server 给表与字段添加描述
/* 在SQL语句中通过系统存储过sp_addextendedproperty可为表字段添加上动态的说明(备注)下面是SQL SERVER帮助文档中对sp_addextendedproperty存储过 ...
- SQL Server 给表和字段添加说明
.添加表说明 EXECUTE sp_addextendedproperty N'MS_Description','表说明',N'user',N'dbo',N'table',N'表名',NULL,NUL ...
- Oracle | 给表和字段添加注释
comment on column 表名.字段名 is '注释内容'; comment on column OPERATOR_INFO.MAIN_OPER_ID is '归属操作员'; c ...
- oracle将一个表中字段的值赋值到另一个表中字段(批量)
面积表中数据错误,现将面积表中的sfmj字段的值改为居民信息表中匹配字段的值 update (select s.name name1,s2.name name2 from simple s,simpl ...
- mysql查询今天、昨天、本周、本月、上一月 、今年数据
mysql数据库中的关于查询日期的一些操作如下: --今天 select * from 表名 where to_days(时间字段名) = to_days(now()); --昨天 --本周 SELE ...
- MYSQL查询今天、昨天、7天前、30天、本月数据
今天: SELECT * FROM 表名 WHERE TO_DAYS( 时间字段名) = TO_DAYS(NOW()); 昨天: SELECT * FROM 表名 WHERE TO_DAYS( NOW ...
- PHP.36-TP框架商城应用实例-后台12-商品管理-主分类添加、修改、搜索(连表查询)
需求:一个商品必须有一个主分类,一个主分类可以有多个商品 [一对多] 修改表p39_goods,增加外键约束,增加索引 主分类添加[控制器->页面] 1.在控制器GoodsController. ...
随机推荐
- android scrollview listview显示不全
原来处理方法是重写ListView import android.content.Context; import android.util.AttributeSet; import android.v ...
- switch语句的功能是否完全可以使用if else多选择结构来代替?如果是,为什么还需要switch结构?
- [UE4]基于物理的材质
基于物理的材质可以产生更准确并且通常更加自然的外观,在所有照明环境中都可以同样完美地工作! 官方说明
- HTTP协议的简单解析
超文本传输协议(HTTP,HyperText Transfer Protocol)是用于从服务器传输超文本到本地浏览器的传输协议,是应用最为广泛的网络协议.B/S网络架构的核心是HTTP,掌握HTTP ...
- dict函数
增 fromkeys(iterable, value) 用可迭代对象生成键,创建默认值相同的字典(value默认None) 删 pop(k) 通过k来删除字典元素, 找不到就会报错, 返回被删除字典元 ...
- 面向对象javascript编程
以构造函数的方式定义对象 function Person(name, age) { this.name = name; this.age = age; this.sayName = function ...
- 1-自己动手编写ArrayList集合
学习集合的原理,这是一个很简单的代码,没有索引下标越界判断,异常处理等,不够健壮,后面会继续更新完善代码..... 只是入门学习一下 package my; /*** * 自己动手编写一个ArrayL ...
- vue2.0 中#$emit,$on的使用详解
vue1.0中 vm.$dispatch 和 vm.$broadcast 被弃用,改用$emit,$on 1. vm.$on( event, callback ) 监听当前实例上的自定义事件.事件可以 ...
- 使用命名管道的OVERLAPPED方式实现非阻塞模式编程 .
命令管道是进程间通讯的一种常用方式,对于命令管道的介绍可以参考别的资料和书籍,这里推荐一个<VC++下命名管道编程的原理及实现>这篇博文,写得比较清楚.但是都是介绍了阻塞模式的编程,我这里 ...
- 更换Git的地址;
Git地址变了,Android Studio更新和提交代码都用不了了:需要把新的Git地址更换一下: 1.打开git项目的文件夹,进入git操作框: 2. git remote -v 查看现有地址: ...