日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

MySQL 多表關聯一對多查詢實現取最新一條數據的方法示例

瀏覽:34日期:2023-10-14 17:56:48

本文實例講述了MySQL 多表關聯一對多查詢實現取最新一條數據的方法。分享給大家供大家參考,具體如下:

MySQL 多表關聯一對多查詢取最新的一條數據遇到的問題多表關聯一對多查詢取最新的一條數據,數據出現重復

由于歷史原因,表結構設計不合理;產品告訴我說需要導出客戶信息數據,需要導出客戶的 所屬行業納稅性質 數據;但是這兩個字段卻在訂單表里面,每次客戶下單都會要求客戶填寫;由此可知,客戶數據和訂單數據是一對多的關系;那這樣的話,問題就來了,我到底以訂單中的哪一條數據為準呢?經過協商后一致同意以最新的一條數據為準;

數據測試初始化SQL腳本

DROP TABLE IF EXISTS `customer`;CREATE TABLE `customer` (`id` BIGINT NOT NULL COMMENT ’客戶ID’,`real_name` VARCHAR(20) NOT NULL COMMENT ’客戶名字’,`create_time` DATETIME NOT NULL COMMENT ’創建時間’,PRIMARY KEY(`id`))ENGINE=INNODB DEFAULT CHARSET = UTF8 COMMENT ’客戶信息表’;-- DATA FOR TABLE customerINSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7717194510959685632’, ’張三’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7718605481599623168’, ’李四’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7720804666226278400’, ’王五’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7720882041353961472’, ’劉六’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722233303626055680’, ’寶寶’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722233895811448832’, ’小寶’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722234507982700544’, ’大寶’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722234927631204352’, ’二寶’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722235550724423680’, ’小賤’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722235921488314368’, ’小明’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722238233975881728’, ’小黑’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722246644138409984’, ’小紅’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722318634321346560’, ’阿狗’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722318674321346586’, ’阿嬌’, ’2019-01-23 16:23:05’);INSERT INTO `demo`.`customer` (`id`, `real_name`, `create_time`) VALUES (’7722318974421546780’, ’阿貓’, ’2019-01-23 16:23:05’);DROP TABLE IF EXISTS `order_info`;CREATE TABLE `order_info` (`id` BIGINT NOT NULL COMMENT ’訂單ID’,`industry` VARCHAR(255) DEFAULT NULL COMMENT ’所屬行業’, `nature_tax` VARCHAR(255) DEFAULT NULL COMMENT ’納稅性質’,`customer_id` VARCHAR(20) NOT NULL COMMENT ’客戶ID’,`create_time` DATETIME NOT NULL COMMENT ’創建時間’,PRIMARY KEY(`id`))ENGINE=INNODB DEFAULT CHARSET = UTF8 COMMENT ’訂單信息表’;-- DATA FOR TABLE order_infoINSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700163609453207552’, ’餐飲酒店類’, ’小規模’, ’7717194510959685632’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700163609453207553’, ’餐飲酒店類’, ’小規模’, ’7717194510959685632’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700167995646615552’, ’高新技術’, ’一般納稅人’, ’7718605481599623168’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700167995646615553’, ’商貿’, ’一般納稅人’, ’7718605481599623168’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700193633216569344’, ’商貿’, ’一般納稅人’, ’7720804666226278400’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700193633216569345’, ’高新技術’, ’一般納稅人’, ’7720804666226278400’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700197875671179264’, ’餐飲酒店類’, ’一般納稅人’, ’7720882041353961472’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7700197875671179266’, ’餐飲酒店類’, ’一般納稅人’, ’7720882041353961472’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7703053372673171456’, ’高新技術’, ’小規模’, ’7722233303626055680’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7703053372673171457’, ’高新技術’, ’小規模’, ’7722233303626055680’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709742385262698496’, ’服務類’, ’一般納稅人’, ’7722233895811448832’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709742385262698498’, ’服務類’, ’一般納稅人’, ’7722233895811448832’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745055683780608’, ’高新技術’, ’小規模’, ’7722234507982700544’, ’2019-01-23 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745055683780609’, ’進出口’, ’小規模’, ’7722234507982700544’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745249439653888’, ’文化體育’, ’一般納稅人’, ’7722234927631204352’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745249439653889’, ’高新技術’, ’一般納稅人’, ’7722234927631204352’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745453266051072’, ’高新技術’, ’小規模’, ’7722235550724423680’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745453266051073’, ’文化體育’, ’小規模’, ’7722235550724423680’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745539848413184’, ’科技’, ’一般納稅人’, ’7722235921488314368’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745539848413185’, ’高新技術’, ’一般納稅人’, ’7722235921488314368’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745652603887616’, ’高新技術’, ’一般納稅人’, ’7722238233975881728’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745652603887617’, ’科技’, ’一般納稅人’, ’7722238233975881728’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745755528568832’, ’進出口’, ’一般納稅人’, ’7722246644138409984’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745755528568833’, ’教育咨詢’, ’小規模’, ’7722246644138409984’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745892539047936’, ’教育咨詢’, ’一般納稅人’, ’7722318634321346560’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709745892539047937’, ’進出口’, ’一般納稅人’, ’7722318634321346560’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709746000127139840’, ’生產類’, ’小規模’, ’7722318674321346586’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709746000127139841’, ’農業’, ’一般納稅人’, ’7722318674321346586’, ’2019-01-23 17:09:53’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709746447445467136’, ’農業’, ’一般納稅人’, ’7722318974421546780’, ’2019-01-24 16:54:25’);INSERT INTO `demo`.`order_info` (`id`, `industry`, `nature_tax`, `customer_id`, `create_time`) VALUES (’7709746447445467137’, ’生產類’, ’小規模’, ’7722318974421546780’, ’2019-01-23 17:09:53’); 按需求寫的SQL語句:

UPDATE order_info SET create_time = NOW(); 嘗試解決問題

SELECTcr.id,cr.real_name,oi.industry,oi.nature_taxFROMcustomer AS crLEFT JOIN (SELECT a.industry, a.nature_tax, a.customer_id, a.create_time FROM order_info AS aLEFT JOIN (SELECT MAX(create_time) AS create_time, customer_id FROM order_info GROUP BY customer_id) AS b ON a.customer_id = b.customer_idWHERE a.create_time = b.create_time) AS oi ON oi.customer_id = cr.idGROUP BY cr.id;

數據重復嘛,小意思,加個 GROUP BY 不就解決了嗎?我怎么會這么機智,哈哈哈!!!但是當我執行完SQL的那一瞬間,我又懵逼了,查詢出來的結果中 所屬行業納稅性質 仍然不是最新的;看來是我想太多了,還是老老實實的解決問題吧。。。

找出重復數據

SELECTcr.id,cr.real_name,oi.industry,oi.nature_taxFROMcustomer AS crLEFT JOIN (SELECT a.industry, a.nature_tax, a.customer_id, a.create_time FROM order_info AS aLEFT JOIN (SELECT MAX(create_time) AS create_time, customer_id FROM order_info GROUP BY customer_id) AS b ON a.customer_id = b.customer_idWHERE a.create_time = b.create_time) AS oi ON oi.customer_id = cr.idGROUP BY cr.id HAVING COUNT(cr.id) >= 2; 執行結果如下:

SELECTcr.id,cr.real_name,oi.industry,oi.nature_taxFROMcustomer AS crLEFT JOIN (SELECT a.industry, a.nature_tax, a.customer_id, a.create_time FROM order_info AS aLEFT JOIN (SELECT MAX(id) AS id, customer_id FROM order_info GROUP BY customer_id) AS b ON a.customer_id = b.customer_idWHERE a.id = b.id) AS oi ON oi.customer_id = cr.id;

哎,終于解決了。。。

更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》、《MySQL數據庫鎖相關技巧匯總》及《MySQL常用函數大匯總》

希望本文所述對大家MySQL數據庫計有所幫助。

標簽: MySQL 數據庫
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
欧美专区在线| 日本一区免费网站| 99久精品视频在线观看视频| 老司机免费视频一区二区| 久久爱www.| 色一区二区三区| 久久久一二三| 日韩精品电影| 亚洲夜间福利| 久久亚洲黄色| 视频一区日韩| 麻豆国产一区| 激情综合自拍| 久久高清国产| 日韩精品午夜| 国户精品久久久久久久久久久不卡| 四虎4545www国产精品 | 91成人在线网站| 国产成人精品一区二区免费看京 | 免费视频久久| 一区在线免费| 老司机精品视频网| 动漫av一区| 久久精品导航| 亚洲一区欧美激情| 麻豆mv在线观看| 亚洲精品九九| 欧美亚洲网站| 亚洲欧美日韩国产| 男人的天堂久久精品| 国产理论在线| 久久九九国产| 巨乳诱惑日韩免费av| 日韩av二区在线播放| 狂野欧美性猛交xxxx| 国精品产品一区| 激情五月综合| 日本中文字幕不卡| 美女久久久精品| 久久久水蜜桃av免费网站| 国产精品免费看| 日韩欧美另类中文字幕| 麻豆91精品91久久久的内涵| 香蕉久久99| 奇米狠狠一区二区三区| 久久久久久婷| 欧美亚洲福利| 精品五月天堂| 一区久久精品| 久久精品一区二区国产| se01亚洲视频 | 国产综合欧美| 国产精品视频首页| 日韩成人精品一区二区三区| 免费亚洲一区| 中国女人久久久| 麻豆久久一区二区| 影音国产精品| 欧美交a欧美精品喷水| 久久精品免费一区二区三区| 欧美亚洲福利| 国产精品美女久久久浪潮软件| 美女精品视频在线| 久久亚洲美女| 久久国产亚洲精品| 国产精品久久久久av蜜臀| 黑丝一区二区三区| 日韩a一区二区| 日韩一区二区三区精品| 99久久99视频只有精品| 国产欧美亚洲精品a| 国产亚洲一区在线| 91偷拍一区二区三区精品| 日韩有吗在线观看| 欧美三级精品| 精品日韩一区| 欧美亚洲tv| 鲁大师影院一区二区三区| 日韩1区在线| 97久久亚洲| 夜夜嗨一区二区| 亚洲风情在线资源| 国产精品久久久久9999高清| 蜜桃一区二区三区在线| 亚洲v在线看| 里番精品3d一二三区| 亚洲aⅴ网站| 亚洲少妇一区| 免费不卡中文字幕在线| 国产福利一区二区精品秒拍| 蜜臀av一区二区在线免费观看 | 亚洲精品国产精品粉嫩| 婷婷综合亚洲| 日韩欧美1区| 精品精品99| 国产日韩欧美在线播放不卡| 蜜桃视频一区二区三区| 午夜av一区| 成人羞羞视频播放网站| av资源中文在线| 久久精品国产一区二区| 日韩av一区二| 91嫩草精品| 日韩黄色av| 日韩精品久久理论片| 中文字幕日本一区二区| 日精品一区二区三区| 午夜久久tv| 婷婷中文字幕一区| 婷婷激情久久| 日韩三区免费| 日韩啪啪电影网| 国产精品二区不卡| av中文字幕在线观看第一页 | 精品一区二区三区中文字幕在线| 亚久久调教视频| 在线精品国产亚洲| 成人久久久久| 日韩深夜视频| 国产精品久久久久久久久妇女| 欧美日本三区| 蜜臀av性久久久久蜜臀aⅴ流畅 | 国产精品一区二区精品| 久久激情av| 欧美在线亚洲综合一区| 午夜久久免费观看| 免费成人网www| 亚洲激情另类| 久久高清国产| 视频一区中文字幕精品| 亚洲精品福利| 日本视频在线一区| 欧美一区免费| 国产九九精品| 麻豆精品久久| 日韩av片子| 久久婷婷激情| 中国女人久久久| 日韩超碰人人爽人人做人人添| 国产欧美69| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 亚洲91视频| 欧美一区二区三区激情视频| 九色精品91| 亚洲精品裸体| 国产探花一区在线观看| 精品国产欧美日韩| 日韩另类视频| 久久国产66| 国产乱码精品一区二区三区亚洲人| 国产精品久久久久久久久久久久久久久| 麻豆国产精品| 美女一区网站| 亚洲欧美日韩综合国产aⅴ| 日本不卡视频一二三区| 国产精品亚洲欧美| 五月激情久久| 国产亚洲在线观看| 91成人在线| yellow在线观看网址| 欧美日韩少妇| 91精品福利观看| 樱桃视频成人在线观看| 伊人久久成人| 国产丝袜一区| 中文字幕系列一区| 三级欧美韩日大片在线看| 亚洲精品日本| 麻豆成人av在线| 亚洲大全视频| 久久精品72免费观看| 日韩1区在线| 视频一区欧美日韩| 欧美aa在线视频| 欧美另类综合| 国产精品一区二区美女视频免费看 | 在线精品亚洲| 精品一区二区三区视频在线播放| 国产专区一区| 国产日韩欧美在线播放不卡| 久久精品观看| 欧美日韩一区二区三区四区在线观看| 伊人久久国产| 7777精品| 欧美日韩三区| 久久一区精品| 免费的成人av| 日韩免费看片| 日本少妇精品亚洲第一区| 欧美日韩水蜜桃| 日韩av资源网| 久久精品国产大片免费观看| 国产欧美一区二区三区精品观看| 美女毛片一区二区三区四区 | 欧美日韩精品一区二区三区在线观看| 日韩欧美字幕| 国产欧美日韩一级| 国产精品普通话对白| 国产资源在线观看入口av| 日韩av一区二区三区四区|