解讀access處理重復記錄的方法_Access數據庫教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:談備份你的改過后綴名的ACCESS數據庫
      近期在開發某公司的OA系統的后臺時有一個關于ACCESS數據庫的問題。 為了防止數據庫為不懷好意的人下載,需要更改數據庫的后綴名為ASPX(ASP等其它也可以),而公司內部人員又需要通

      在一個表中有重復的記錄,重復的次數可能是一條或多條,如何在重復記錄中只留下一條,刪除其他多余的記錄,使數據集的每條記錄都是唯一的?本文運用了一種比較笨拙不過邏輯比較清楚的方法,希望大家能提供更好的方法!

      1列出表中的重復記錄

      (sameoda)

      SELECT [2].[地級市], Count(*) AS 記錄數FROM 2GROUP BY [2].[地級市]HAVING count(*)>1ORDER BY [地級市];

      地級市記錄數100000951094210000095111621000009511272100000951138210000095114921000009511502

      2以下是除去相同記錄的過程

      1)列出表中的所有重復記錄

      (表2中重復記錄)

      SELECT 2.*FROM 2 RIGHT JOIN sameoda ON [2].[地級市]=[sameoda].[地級市];

      ID編號地級市保險貨物名稱數量及包裝單位聲明價值(元)運輸自運輸到74691466100000951094苯扎貝特片、水飛薊賓膠囊3箱18600天津佳木斯53511077100000951094苯扎貝特片、水飛薊賓膠囊3箱18600天津佳木斯53501076100000951116水飛薊賓膠囊5箱29000天津烏魯木齊74681465100000951116水飛薊賓膠囊5箱29000天津烏魯木齊53531079100000951127氟他胺片4箱66800天津哈爾濱74711468100000951127氟他胺片4箱66800天津哈爾濱

      2)從重復記錄中找到唯一的一條記錄

      minbihanhao

      SELECT 2.*FROM 2 LEFT JOIN 表2中重復記錄 ON [2].[ID]=[表2中重復記錄].[ID]WHERE [表2中重復記錄].[id] Is Null;

      地級市id100000951094535110000095111653501000009511275353100000951138535410000095114953521000009511505355

      3)顯示唯一記錄的全部信息

      allsame1

      SELECT 2.*FROM 2 LEFT JOIN minbihanhao ON ([2].[地級市]=[minbihanhao].[地級市]) AND ([2].[id]=[minbihanhao].[id])WHERE [minbihanhao].[地級市] Is Not NullORDER BY [2].[id];

      4)在原表中除去所有相同的記錄

      dropsame2

      SELECT 2.*FROM 2 LEFT JOIN 表2中重復記錄 ON [2].[ID]=[表2中重復記錄].[ID]WHERE [表2中重復記錄].[id] Is Null;

      5)表2除去重復記錄=在原表中除去所有相同的記錄 顯示唯一記錄的全部信息

      表2除去重復記錄

      SELECT *FROM dropsame2 UNION select * fromallsame1;

      分享:如何將mysql數據導入access數據庫
      mysql數據庫表sqltable 字段id,name,sex,email access數據庫表accesstable id,name,sex,email ? $connect = mysql_connect(localhost,

      來源:模板無憂//所屬分類:Access數據庫教程/更新時間:2009-08-14
      相關Access數據庫教程