mysql-查詢存在主表但是不存在副標的數據
A、B兩表,找出ID字段中,存在A表,但是不存在B表的數據。A表總共13w數據,去重後大約3W條數據,B表有2W條數據,且B表的ID字段有索引。
方法一
使用 not in ,容易理解,效率低 ~執行時間為:1.395秒~
1 select distinct A.ID from A where A.ID not in (select ID from B)
方法二
使用 left join...on... , "B.ID isnull" 表示左連接之後在B.ID 字段為 null的記錄 ~執行時間:0.739秒~
1 select A.ID from A left join B on A.ID=B.ID where B.ID is null
圖解
方法三
邏輯相對復雜,但是速度最快 ~執行時間: 0.570秒~
1 select * from B 2 where (select count(1) as num from A where A.ID = B.ID) = 0
mysql-查詢存在主表但是不存在副標的數據
相關推薦
mysql-查詢存在主表但是不存在副標的數據
get left join 圖解 主表 速度 相對 1.3 null 分享圖片 A、B兩表,找出ID字段中,存在A表,但是不存在B表的數據。A表總共13w數據,去重後大約3W條數據,B表有2W條數據,且B表的ID字段有索引。 方法一 使用 not in ,容易理解,
MySQL 查詢某一字段為數字的數據
use 查詢 com nbsp mysql info _id pan exp (user_id REGEXP ‘[^0-9.]‘) = 0 為 純數字 (user_id REGEXP ‘[^0-9.]‘) = 1 為非數字 MySQ
mysql存儲過程批量向表插入數據
sts procedure 批量 count primary mysql存儲過程 mage 批量插入 incr 業務需要,往某個表中批量插入數據,使用存儲過程插入 首先,要建立一張mysql表,表明為phone_number, 三個字段,id 自增,number 就是要插
mysql 刪除表資料但不刪除表結構SQL語句
當一份資料亂糟糟的時候,想把資料刪除掉,重新來過,但是又覺得太懶,不想重新定義一些表字段什麼的,索性就把資料庫內容給全部刪掉,重新匯入一遍資料。 我是在mysql客戶端,使用SQL語句進行刪除的。 下面是兩種SQL語句: 方法一: truncate table 表名; //
使用泛型存儲不同類型的數據
bsp bject 知識 sharp 類修飾符 技術分享 -h 進行 .com 實現效果: 知識運用:(泛型類) 類修飾符 class 類名 <類型參數T> { 類體 } 實現代碼: class Types <T&
mysql查詢欄位資料不重複distinct及distinct的多欄位操作
轉載自 【http://www.jb51.net/article/77997.htm】 MySQL通常使用GROUPBY(本質上是排序動作)完成DISTINCT操作,如果DISTINCT操作和ORDERBY操作組合使用,通常會用到臨時表.這樣會影響效能. 在一些情況下,M
SQL SERVER大話存儲結構(3)_數據行的行結構
bits 基礎 就會 mar ant rain 版權 bpa 一個數 一行數據是如何來存儲的呢? 變長列與定長列,NULL與NOT NULL,實際是如何整理存放到 8k的數據頁上呢? 對表格進行增減列,修改長度,添加默認值等DDL S
oracle存儲過程中循環插入數據
循環 har weight where position pan end pda con //oracle 循環插入數據 procedure Insert_WData( p_CODE1 ao_model.code1%type,
服務器存儲共享文件夾丟失數據恢復檢測報告
服務器 網絡存儲 數據恢復 raid 北京數據恢復 服務器故障描述發生故障的服務器存儲是DroboPro FS網絡存儲器,共有8塊SAS硬盤,單盤容量2TB,raid5磁盤陣列。 在服務器的正常使用過程中有一個共享文件夾丟失,管理員進行簡單檢查後在北京數據恢復公司咨詢服務器數據恢復相關問題
數據存儲介質銷毀:護航數據安全的最後一公裏
騰訊 數據安全 隨著互聯網的快速發展,網絡化已經深入到人們的方方面面,隨之而來的是各類涉密敏感數據幾何倍的增長。而近年來信息安全事件頻頻發生,數據安全的重要性日益凸顯。如何防止數據泄漏,是企業關註並且急需解決的問題之一。數據安全主要涉及到兩個方向:一、網絡信息安全,互聯網時代不法份子借助網絡安全漏洞盜
V7000存儲7塊硬盤離線數據恢復成功率分析
存儲 v7000存儲 數據恢復 硬盤掉線 成功率 存儲設備清單/數據恢復故障:客戶的存儲設備為一臺V7000存儲機頭加8臺存儲陣列櫃,80塊6T機械硬盤組成raid5磁盤陣列,分配為13個lun,Windows操作系統;NTFS文件系統。由於機房漏水導致存儲設備進水,7塊硬盤報警脫機(包括
oracle索引、視圖、存儲過程、觸發器、oracle數據類型
real 輸出數據 image gin demo 同名 全表掃描 cas 業務規則 1、索引:索引是幫助用戶在表中快速地找到記錄的數據庫結構。 a) 自動創建索引:當你為一張表定義主關鍵或唯一性約束條件時一個惟一的索引就已經被創建了。 b) 手動創建索引: 用戶可以自己創建
gitlab 存儲倉庫目錄設置及數據遷移
取消 修改 需要 filesyste df -h 情況 如果 fault 公司 註:一開始沒有考慮到把gitlab劃分好存儲目錄,占用系統磁盤,由於gitlab是默認安裝的,隨著公司代碼越來越多,導致gitlab數據目錄空間不足 磁盤空間: [root@gitlab ~]
mysql查詢指定庫的所有表的記錄數、外來鍵、索引、檢視、觸發器等
-- 查詢指定庫的所有表資料行數 use information_schema; select table_name,table_rows from tables where TABLE_SCHEMA = 'cs_lanzhou' order by table
MySQL查詢分頁,同時獲取總記錄數
Mysql分頁查詢獲取totalCount大幅提升效能的辦法總結 MySQL查詢分頁,通常在MySQL中獲取記錄總數都會使用SELECT COUNT(*) FROM tblName之類的語句 這類語句的缺點是:記錄集還需要單獨的查詢來獲取,相當於查詢兩次,推薦如下寫法:
大數據時代的數據存儲,非關系型數據庫MongoDB
字段名 b數 重要 到來 子查詢 自動選擇 依然 還在 工具 爆炸式發展的NoSQL技術 在過去的很長一段時間中,關系型數據庫(Relational Database Management System)一直是最主流的數據庫解決方案,他運用真實世界中事物與關系來解釋數據庫中
定義接受二維陣列作為實參的形參時,定義時可以省略二維陣列的行數,但不能省略列數。
可以用二維陣列名作為實參或者形參,在被呼叫函式中對形引數組定義時可以指定所有維數的大小,也可以省略第一維的大小說明,如: void Func(int array[3][10]); void Func(int array[][10]); 二者都是合
第五部分(三) 數據存儲(非關系型數據庫存儲:MongoDB存儲、Redis存儲)
inux end 啟動 詳細 cat 鍵值對 示例 屬性獲取 password 非關系型數據庫存儲NoSQL全稱Not Only SQL,意為不僅僅是SQL,泛指非關系型數據庫。NoSQL基於鍵值對,不經過SQL層的解析,數據間沒有耦合性,性能高。非關系型數據庫細分如下:鍵
[19/05/07-星期二] JDBC(Java DataBase Connectivity)_CLOB(存儲大量的文本數據)與BLOB(存儲大量的二進制數據)
最大 getch contex 般的 lar 字符串輸入 一次 rman rgs 一、 CLOB(Character Large Object ) – 用於存儲大量的文本數據 – 大字段有些特殊,不同數據庫處理的方式不一樣,大字段的操作常常是以流
Mysql學習之十二:JDBC連接數據庫之DriverManager方法
url state 種類 delet rom 條件 管理系 ont into JDBC連接數據庫 ?創建一個以JDBC連接數據庫的程序,包括7個步驟: 1、載入JDBC驅動程序: 在連接數據庫之前。首先要載入想要連接的數據庫的驅動到JVM