Mysql 行转列相同条件要拆分为2列,结果重复问题 不是很明白你的意思select distinct * from tableselect top(1) * from table ???????? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。 参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382 1. 你的 create table xxx .. 语句 2. 你的 insert into xxx ... 语句 3. 结果是什么样,(并给以简单的算法描述) 4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL) 这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。 CREATE TABLE IF NOT EXISTS `bs_jylsjl_history` ( `jylsid` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID 主键自动增长', `lsbh` varchar(30) NOT NULL COMMENT '中心系统流水号', `xtls` varchar(30) NOT NULL COMMENT '核心系统流水号', `shbh` varchar(20) NOT NULL COMMENT '商户编号,外键', `zdbh` varchar(20) NOT NULL COMMENT '终端编号,外键', `zdls` varchar(30) DEFAULT NULL COMMENT '终端流水号', `jszh` varchar(25) NOT NULL COMMENT '结算账号', `chzh` varchar(25) NOT NULL COMMENT '储户账号', `chhm` varchar(30) NOT NULL DEFAULT '未知' COMMENT '储户户名', `jym` char(4) NOT NULL COMMENT '交易码 ,3位偏移量加1位交易渠道值', `ywbh` varchar(30) NOT NULL COMMENT '业务编号 ,外键', `jyrq` varchar(10) NOT NULL COMMENT '交易日期:YYYYMMDD', `jysj` varchar(8) NOT NULL COMMENT '交易时间:HHMMSS', `qssj` varchar(20) DEFAULT NULL COMMENT '清算时间', `jyje` varchar(15) NOT NULL DEFAULT '0.00' COMMENT '交易金额', `jyztm` varchar(10) NOT NULL COMMENT '交易状态码', `jyfff` char(2) NOT NULL COMMENT '付费方:00 -转出卡 01-转入卡', `jysxf` varchar(15) NOT NULL DEFAULT '0.00' COMMENT '储户手续费', `shsxf` varchar(15) DEFAULT '0.0' COMMENT '商户手续费', `shfrsxf` varchar(15) NOT NULL DEFAULT '0.0' COMMENT '商户分润手续费', `shyj` varchar(15) NOT NULL DEFAULT '0.00' COMMENT '商户佣金', `czybh` varchar(20) NOT NULL COMMENT '操作员编号', `hclzt` varchar(10) DEFAULT NULL COMMENT '后处理状态,0,无,1冲正,2,撤销', `zrzh` varchar(25) NOT NULL COMMENT '转入账户', `ssjgm` varchar(8) NOT NULL COMMENT '商户所属机构码', `ssjgmc` varchar(30) NOT NULL COMMENT '商户所属机构名称', `pcbh` varchar(30) DEFAULT NULL COMMENT '终端批次号', `shzdls` varchar(32) DEFAULT NULL COMMENT '商户终端流水', `dkzh` varchar(25) DEFAULT NULL COMMENT '贷款帐号,预留', `dklx` varchar(3) DEFAULT NULL COMMENT '贷款类型,预留', `sqm` varchar(10) DEFAULT NULL COMMENT '授权码', `xtckh` varchar(10) DEFAULT NULL COMMENT '系统参考号', `yjylsh` varchar(30) DEFAULT NULL COMMENT '原交易流水号', `ypch` varchar(10) DEFAULT NULL COMMENT '原批次号', `xtxym` varchar(6) NOT NULL COMMENT '系统响应吗', `ylzd2` timestamp NULL DEFAULT CURRENT_TIMESTAMP, `ylzd3` varchar(10) DEFAULT NULL COMMENT '预留字段', `ylzd4` varchar(10) DEFAULT NULL COMMENT '预留字段', `ylzd5` varchar(10) DEFAULT NULL COMMENT '预留字段', `ylzd6` varchar(10) NOT NULL COMMENT '预留字段', `ylzd7` varchar(10) NOT NULL COMMENT '预留字段', `ylzd8` varchar(10) NOT NULL COMMENT '预留字段', `ylzd9` varchar(10) NOT NULL COMMENT '预留字段', `ylzd10` varchar(10) NOT NULL COMMENT '预留字段', `jyqd` varchar(30) DEFAULT NULL COMMENT '交易渠道', `zczh` varchar(35) NOT NULL COMMENT '转出账号', `jybz` varchar(50) DEFAULT NULL COMMENT '交易备注', `yxtlsh` varchar(30) DEFAULT NULL COMMENT '原系统流水号', `yxtckh` varchar(20) DEFAULT NULL COMMENT '原系统参考号', `sapbh` varchar(10) DEFAULT NULL COMMENT 'sap标识', UNIQUE KEY `shzdls` (`shzdls`) USING BTREE) ENGINE=InnoDB DEFAULT CHARSET=gbk COMMENT='交易流水记录表' AUTO_INCREMENT=31226 ;CREATE TABLE IF NOT EXISTS `isa_jgxx` ( `jgxxid` int(8) NOT NULL AUTO_INCREMENT COMMENT '主键id', `regioncode` varchar(8) NOT NULL DEFAULT '' COMMENT '机构码', `parentcode` varchar(8) NOT NULL DEFAULT '' COMMENT '上级机构码', `regionname` varchar(50) NOT NULL, `re` varchar(50) NOT NULL DEFAULT '' COMMENT '标记', `areacode` varchar(6) NOT NULL COMMENT '主键id', `shnum` int(8) DEFAULT '0', PRIMARY KEY (`jgxxid`)) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3008 ; select jycgbs,jycgje ,jysbbs, jysbje ,shbh,zdbh,sapbh, shmc, jgdm,jg.regionname as jgmc from (select IF(both_tj.hclzt='00',jyzbs,0) AS jycgbs,IF(both_tj.hclzt='00',jyzje,0) AS jycgje,IF(both_tj.hclzt!='00',jyzbs,0) AS jysbbs,IF(both_tj.hclzt!='00',jyzje,0) AS jysbje ,both_tj.shbh,sapbh, shmc,zdbh, jgdm from ( SELECT count(jylsid) as jyzbs,sum(jyje) as jyzje ,sapbh,hclzt,shbh,zdbh FROM bs_jylsjl_history bs_jyls WHERE (jyrq between 20141101 and 20141130) group by shbh,zdbh,sapbh,hclzt) as both_tj inner join msgm_shxx shxx on shxx.shbh =both_tj.shbh ) as tjlist inner join isa_jgxx jg on jg.regioncode=tjlist.jgdm mysql获取表中外键信息列表 求助,关于数据库表格设计 关于MYSQL数据库速度问题,请教高手 求高手给优化SQL语句。谢谢。 mysql4怎么导入mysql5?直接导入出现乱码? update可以加强制索引? SQL SERVER 数据库的数据如何转换成MY SQL 4的数据库的数据??? 哎,看了好多人都在问乱码问题,我也问! 关于Postgresql中的触发器 紧急问题!!关于删除,一定给分!!! load data local infile 导入路径问题 如何用Java代码将mysql中一张大表数据5000w左右插入到另一张表中
参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
CREATE TABLE IF NOT EXISTS `bs_jylsjl_history` (
`jylsid` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID 主键自动增长',
`lsbh` varchar(30) NOT NULL COMMENT '中心系统流水号',
`xtls` varchar(30) NOT NULL COMMENT '核心系统流水号',
`shbh` varchar(20) NOT NULL COMMENT '商户编号,外键',
`zdbh` varchar(20) NOT NULL COMMENT '终端编号,外键',
`zdls` varchar(30) DEFAULT NULL COMMENT '终端流水号',
`jszh` varchar(25) NOT NULL COMMENT '结算账号',
`chzh` varchar(25) NOT NULL COMMENT '储户账号',
`chhm` varchar(30) NOT NULL DEFAULT '未知' COMMENT '储户户名',
`jym` char(4) NOT NULL COMMENT '交易码 ,3位偏移量加1位交易渠道值',
`ywbh` varchar(30) NOT NULL COMMENT '业务编号 ,外键',
`jyrq` varchar(10) NOT NULL COMMENT '交易日期:YYYYMMDD',
`jysj` varchar(8) NOT NULL COMMENT '交易时间:HHMMSS',
`qssj` varchar(20) DEFAULT NULL COMMENT '清算时间',
`jyje` varchar(15) NOT NULL DEFAULT '0.00' COMMENT '交易金额',
`jyztm` varchar(10) NOT NULL COMMENT '交易状态码',
`jyfff` char(2) NOT NULL COMMENT '付费方:00 -转出卡 01-转入卡',
`jysxf` varchar(15) NOT NULL DEFAULT '0.00' COMMENT '储户手续费',
`shsxf` varchar(15) DEFAULT '0.0' COMMENT '商户手续费',
`shfrsxf` varchar(15) NOT NULL DEFAULT '0.0' COMMENT '商户分润手续费',
`shyj` varchar(15) NOT NULL DEFAULT '0.00' COMMENT '商户佣金',
`czybh` varchar(20) NOT NULL COMMENT '操作员编号',
`hclzt` varchar(10) DEFAULT NULL COMMENT '后处理状态,0,无,1冲正,2,撤销',
`zrzh` varchar(25) NOT NULL COMMENT '转入账户',
`ssjgm` varchar(8) NOT NULL COMMENT '商户所属机构码',
`ssjgmc` varchar(30) NOT NULL COMMENT '商户所属机构名称',
`pcbh` varchar(30) DEFAULT NULL COMMENT '终端批次号',
`shzdls` varchar(32) DEFAULT NULL COMMENT '商户终端流水',
`dkzh` varchar(25) DEFAULT NULL COMMENT '贷款帐号,预留',
`dklx` varchar(3) DEFAULT NULL COMMENT '贷款类型,预留',
`sqm` varchar(10) DEFAULT NULL COMMENT '授权码',
`xtckh` varchar(10) DEFAULT NULL COMMENT '系统参考号',
`yjylsh` varchar(30) DEFAULT NULL COMMENT '原交易流水号',
`ypch` varchar(10) DEFAULT NULL COMMENT '原批次号',
`xtxym` varchar(6) NOT NULL COMMENT '系统响应吗',
`ylzd2` timestamp NULL DEFAULT CURRENT_TIMESTAMP,
`ylzd3` varchar(10) DEFAULT NULL COMMENT '预留字段',
`ylzd4` varchar(10) DEFAULT NULL COMMENT '预留字段',
`ylzd5` varchar(10) DEFAULT NULL COMMENT '预留字段',
`ylzd6` varchar(10) NOT NULL COMMENT '预留字段',
`ylzd7` varchar(10) NOT NULL COMMENT '预留字段',
`ylzd8` varchar(10) NOT NULL COMMENT '预留字段',
`ylzd9` varchar(10) NOT NULL COMMENT '预留字段',
`ylzd10` varchar(10) NOT NULL COMMENT '预留字段',
`jyqd` varchar(30) DEFAULT NULL COMMENT '交易渠道',
`zczh` varchar(35) NOT NULL COMMENT '转出账号',
`jybz` varchar(50) DEFAULT NULL COMMENT '交易备注',
`yxtlsh` varchar(30) DEFAULT NULL COMMENT '原系统流水号',
`yxtckh` varchar(20) DEFAULT NULL COMMENT '原系统参考号',
`sapbh` varchar(10) DEFAULT NULL COMMENT 'sap标识',
UNIQUE KEY `shzdls` (`shzdls`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=gbk COMMENT='交易流水记录表' AUTO_INCREMENT=31226 ;
CREATE TABLE IF NOT EXISTS `isa_jgxx` (
`jgxxid` int(8) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`regioncode` varchar(8) NOT NULL DEFAULT '' COMMENT '机构码',
`parentcode` varchar(8) NOT NULL DEFAULT '' COMMENT '上级机构码',
`regionname` varchar(50) NOT NULL,
`re` varchar(50) NOT NULL DEFAULT '' COMMENT '标记',
`areacode` varchar(6) NOT NULL COMMENT '主键id',
`shnum` int(8) DEFAULT '0',
PRIMARY KEY (`jgxxid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=3008 ;
select jycgbs,jycgje ,jysbbs, jysbje ,shbh,zdbh,sapbh, shmc, jgdm,jg.regionname as jgmc from (select IF(both_tj.hclzt='00',jyzbs,0) AS jycgbs,IF(both_tj.hclzt='00',jyzje,0) AS jycgje,IF(both_tj.hclzt!='00',jyzbs,0) AS jysbbs,IF(both_tj.hclzt!='00',jyzje,0) AS jysbje ,both_tj.shbh,sapbh, shmc,zdbh, jgdm from ( SELECT count(jylsid) as jyzbs,sum(jyje) as jyzje ,sapbh,hclzt,shbh,zdbh FROM bs_jylsjl_history bs_jyls WHERE (jyrq between 20141101 and 20141130) group by shbh,zdbh,sapbh,hclzt) as both_tj inner join msgm_shxx shxx on shxx.shbh =both_tj.shbh ) as tjlist inner join isa_jgxx jg on jg.regioncode=tjlist.jgdm