当前位置: 首页 > news >正文

生物科技企业网站做的比较好的商业网站是怎么做的

生物科技企业网站做的比较好的,商业网站是怎么做的,个人网站备案网站名称,京东联盟新手没有网站怎么做推广需求说明#xff1a;表中有 id, info, cnt 三个字段#xff0c;对应的增量表多idu增量标记字段和时间戳字段ctimestamp。增量表中的 id 会有重复#xff0c;其他字段 info、cnt 会不断更新#xff0c;idu为增量标记字段#xff0c;ctimestamp为IDU操作的时间戳。目的时要做…需求说明表中有 id, info, cnt 三个字段对应的增量表多idu增量标记字段和时间戳字段ctimestamp。增量表中的 id 会有重复其他字段 info、cnt 会不断更新idu为增量标记字段ctimestamp为IDU操作的时间戳。目的时要做到 1获取增量表中的时间戳字段ctimestamp为最新值对应的记录、进行id去重 2将第一步的查询结果进行脱IDU标记和时间戳字段、合并到最终的表中不带IDU标记和时间戳字段。 SQL查询根据时间戳字段和id字段获取最新值的记录 -- 表字段说明id 会有重复其他字段 info、cnt 会不断更新idu为增量标记字段ctimestamp为IDU操作的时间戳需求是要获取时间戳字段ctimestamp为最新值对应的记录 -- 脱IDU和时间戳以后的最终目的表不带增量标记和时间戳字段 drop table if exists test81; -- 带IDU标记idu字段和时间戳字段ctimestampid字段可能存在重复的值的记录 drop table if exists test81_idu; -- 基于 test81_idu 生成的 D 的记录id唯一去重后无重复记录 drop table if exists test81_tmp2_d; -- 基于 test81_idu 生成的 I、U 的记录id唯一去重后无重复记录 drop table if exists test81_tmp3_iu; -- 创建最终目的表、并构部分已有数据 create table test81 (   id int not null,    info varchar(100),    cnt int,   primary key(id)); insert into test81 (id,info,cnt) values (1, aaa, 31);  insert into test81 (id,info,cnt) values (2, bbb, 33);  insert into test81 (id,info,cnt) values (3, ccc, 35); 注意如果是GBase8a primary key(id)  主键约束无效。  select * from test81; 查询结果 ---------------- | id | info | cnt  | ---------------- |  1 | aaa  |   31 | |  2 | bbb  |   33 | |  3 | ccc  |   35 | ---------------- -- 创建带IDU标记的表id存在重复多条记录 create table test81_idu (   id int not null,    info varchar(100),    cnt int,   idu varchar(10),   ctimestamp timestamp);     insert into test81_idu (id,info,cnt,idu,ctimestamp) values (1, aaa, 31, I, 2023-10-27 12:31:31.123456789);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (2, bbb, 33, I, 2023-10-27 12:33:33.123456789);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (3, ccc, 35, I, 2023-10-27 12:35:35.123456789);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (1, aaa, 50, U, 2023-10-27 12:50:50.123456789);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (1, aaa, 41, U, 2023-10-27 12:41:41.123456789);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (2, NULL, NULL, D, 2023-10-27 12:52:52.123456789);    注意MySQL支持上面9位精确到纳秒的输入只是数据库行为实际上丢弃后面3位只取前面6位但不会报错能执行成功。但如果是GBase8a则不行只能指定6位  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (1, aaa, 31, I, 2023-10-27 12:31:31.123456);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (2, bbb, 33, I, 2023-10-27 12:33:33.123456);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (3, ccc, 35, I, 2023-10-27 12:35:35.123456);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (1, aaa, 50, U, 2023-10-27 12:50:50.123456);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (1, aaa, 41, U, 2023-10-27 12:41:41.123456);  insert into test81_idu (id,info,cnt,idu,ctimestamp) values (2, NULL, NULL, D, 2023-10-27 12:52:52.123456); select * from test81_idu; 执行结果 ------------------------------------------- | id | info | cnt  | idu  | ctimestamp          | ------------------------------------------- |  1 | aaa  |   31 | I    | 2023-10-27 12:31:31 | |  2 | bbb  |   33 | I    | 2023-10-27 12:33:33 | |  3 | ccc  |   35 | I    | 2023-10-27 12:35:35 | |  1 | aaa  |   50 | U    | 2023-10-27 12:50:50 | |  1 | aaa  |   41 | U    | 2023-10-27 12:41:41 | |  2 | NULL | NULL | D    | 2023-10-27 12:52:52 | ------------------------------------------- 表字段说明id 会有重复其他字段 info、cnt 会不断更新idu为增量标记字段ctimestamp为IDU操作的时间戳需求是要获取时间戳字段ctimestamp为最新值对应的记录 脱IDU标记合并处理中间用多个到临时表 -- 先查询一下根据时间戳字段和id进行处理对id去重同一个id的多条重复记录只取时间戳最新的一条记录 SELECT a.id,a.info,a.cnt,a.idu FROM test81_idu a,( SELECT  id, MAX(ctimestamp)AS time FROM test81_idu GROUP BY id ORDER BY COUNT(*)DESC)b WHERE a.idb.id and a.ctimestampb.time; 执行结果 ---------------------- | id | info | cnt  | idu  | ---------------------- |  3 | ccc  |   35 | I    | |  1 | aaa  |   50 | U    | |  2 | NULL | NULL | D    | ---------------------- -- 如果用 INSERT INTO 则需要先创建目标表、如果用 SELECT INTO 则要保证目标表不存在执行时会创建目标表 DROP TABLE IF EXISTS test81_tmp2_d; -- CREATE TABLE IF NOT EXISTS test81_tmp2_d  LIKE test81_idu; -- 根据id和时间戳查询最新记录、并只显示iduD的结果 -- MySQL不支持的方式 -- SELECT id,info,cnt INTO test81_tmp2_d FROM test81_idu; -- MySQL能支持的方式 DROP TABLE IF EXISTS test81_tmp2_d; CREATE TABLE test81_tmp2_d  ( SELECT a.id,a.info,a.cnt,a.idu FROM test81_idu a,( SELECT  id, MAX(ctimestamp)AS time FROM test81_idu GROUP BY id ORDER BY COUNT(*)DESC)b WHERE a.idb.id AND a.ctimestampb.time AND a.iduD ); -- 查询结果 select * from test81_tmp2_d; ---------------------- | id | info | cnt  | idu  | ---------------------- |  2 | NULL | NULL | D    | ---------------------- -- 根据id和时间戳查询最新记录、并只显示iduIU的结果 -- MySQL能支持的方式 DROP TABLE IF EXISTS test81_tmp3_iu; CREATE TABLE test81_tmp3_iu  ( SELECT a.id,a.info,a.cnt,a.idu FROM test81_idu a,( SELECT  id, MAX(ctimestamp)AS time FROM test81_idu GROUP BY id ORDER BY COUNT(*)DESC)b WHERE a.idb.id AND a.ctimestampb.time AND (a.idu IN (I,U)) ); -- 查询结果 select * from test81_tmp3_iu; ---------------------- | id | info | cnt  | idu  | ---------------------- |  3 | ccc  |   35 | I    | |  1 | aaa  |   50 | U    | ---------------------- -- 将D的数据从最终目标表删除 DELETE FROM test81 WHERE id in (SELECT DISTINCT id FROM test81_tmp2_d); -- D 记录删除后查看目的表数据 select * from test81; ---------------- | id | info | cnt  | ---------------- |  1 | aaa  |   31 | |  3 | ccc  |   35 | ---------------- -- 将I和U的数据插入或更新到最终的目标表 -- merge into, 目的表的关联id存在则update、不存在则insert -- GBase8a 使用 merge into MySQL 不支持该语法 -- merge into test81 t1 using test81_tmp3_iu tmp on t1.idtmp.id when matched then update set t1.infotmp.info,t1.cnttmp.cnt when not matched then insert(id,info,cnt)values(tmp.id,tmp.info,tmp.cnt); -- MySQL 使用 insert into GBase8a 不支持该语法 INSERT INTO test81(id,info,cnt) SELECT id,info,cnt FROM test81_tmp3_iu ON DUPLICATE KEY UPDATE infoVALUES(info), cntVALUES(cnt); -- I和U合并到目的表后查询结果 select * from test81; ---------------- | id | info | cnt  | ---------------- |  1 | aaa  |   50 | |  3 | ccc  |   35 | ---------------- 到此为止整个脱IDU表级和时间戳的流程处理完毕。
http://www.hkea.cn/news/14383421/

相关文章:

  • 怎么做网站表白赤壁市药监局网站建设方案
  • 商务网站内容维护范围龙游手机网站制作
  • 股权众筹网站建设wordpress 魅族
  • 网站构成建设三轮摩托车官方网站
  • 网站统计代码添加网站备案添加域名
  • 如何建立网站后台程序wordpress 挂马漏洞
  • 网站建设嘉兴公司电话网站服务器出错是什么意思
  • 陕西省建设厅网站劳保统筹基金怎么做一个微信小程序
  • wordpress 一键建站谁专门做网站安全维护
  • 建设网站的基本流程上海网站建设公司选哪家好
  • 惠州建设银行网站前端开发一年可以挣多少钱
  • 全国做网站的大公司线上推广策略
  • 网站四网合一用.cc做网站官网可以吗
  • 商城网站设计公司wordpress 文章赞
  • 最新免费网站源码合肥网站建设兼职
  • 贵州黔东南双控体系建设网站手机海报制作app
  • 西安h5建站怎样推广网站平台
  • 自己有主机怎么做论坛网站app开发方案
  • 如何申请网站优化工作个人网页模板关于爱国
  • iis部署网站 win7网站建设与管理试题一
  • 网站建设公司的名字电商网站开发人员人数
  • php网站哪些网站批量发布
  • 公司网站cms盐城公司网站建设
  • 网站开发哪里安全中国十大网络公司排行榜
  • 雅思培训班黑帽seo技术论坛
  • 路由器 东莞网站建设怎么做网页版调查问卷
  • 做自己的网站能赚钱吗哈尔滨网站建设培训
  • 网站如何生成appwordpress修改域名后无法登陆
  • 合肥企业网站建设工作室张掖网站建设公司
  • 中国工程建设监理协会网站找个男做那个视频网站好