1. 程式人生 > >用where in遇到null時的解決方法1

用where in遇到null時的解決方法1

參考:https://www.2cto.com/database/201109/104960.html;http://ask.csdn.net/questions/680006

1 :  

SELECT


FROM
華東 
WHERE

公司程式碼 IN ( SELECT 公司代 FROM 備選客戶 WHERE 公司代 != '' AND 公司代 IS NOT NULL );

2:用exists替換

SELECT

FROM
華東 
WHERE
EXISTS (
SELECT
公司代 
FROM

備選客戶 where 華東.公司程式碼=`備選客戶`.公司代);

3: in和exists一點區別

exists做為where 條件時,是先對where 前的主查詢詢進行查詢,然後用主查詢的結果一個一個的代入exists的查詢進行判斷,如果為真則輸出當前這一條主查詢的結果,否則不輸出。

in 是把外表和內表作hash 連線,而exists是對外表作loop迴圈,每次loop迴圈再對內表進行查詢。一直以來認為exists比in效率高的說法是不準確的。
如果查詢的兩個表大小相當,那麼用in和exists差別不大。
如果兩個表中一個較小,一個是大表,則子查詢表大的用exists,子查詢表小的用in:

相關推薦

where in遇到null解決方法1

參考:https://www.2cto.com/database/201109/104960.html;http://ask.csdn.net/questions/6800061 :  SELECT* FROM華東 WHERE公司程式碼 IN ( SELECT 公司代 FRO

The system is running in low-graphics mode解決方法

當虛擬機器重啟時出現the system is running in low-graphics mode時, 主要是因為Ubuntu16.04啟動不了圖形介面,如下圖   此時輸入命令修改許可權: df -h cd /etc/X11 sudo c

Oracle數據庫查詢 where in 查詢的項超過1000條的解決方案

ont rac ipc ram take list() nbsp con || 眾所周知,如果我們的用SQL查詢語句時,如果用where in帶的參數超過1000條的話,oracle是會報錯的。 因為項目中遇到這樣的問題,所以找到了接下來我要說的這個辦法。 因為用的地方很多

Linux下使用selenium出現'geckodriver' executable needs to be in PATH.錯誤,解決方法

今天想用selenium自動開啟12306網址 程式碼如下: def __init__(self): #建構函式 初始化 self.initmy_url = 'https://kyfw.12306.cn/otn/view/index.html'#登陸成功後的網址

讀取Excel檔案出現null解決方法

在讀取Excel檔案時常常出現讀取某些欄位為null的情況,其實是有值,原因是讀取檔案時,Excel會以第一行的資料型別為參考,如果後邊的與其不一致,則會出現些問題。 以下一個朋友的解決方案,他的Excel檔案的連線串寫作如下。據說可以強制資料為字串,具體我已測試過。僅供參考

Ubuntu16.04出現the system is running in low-graphics mode解決方法

當虛擬機器重啟時出現the system is running in low-graphics mode時,是因為Ubuntu16.04啟動不了圖形介面,按ctrl-alt-F1進入除錯介面。 此時輸入命令修改許可權: df -h cd /etc/X11 sudo cp xorg.conf.failsa

開啟檔案管理 URI獲取檔案路徑為null解決方法

最近做Android圖片相關的開發,通過intent 得到 URI獲取的檔案路徑為null,正好這篇文章解決了我的問題,mark一下 原文: 今天呼叫系統自帶的FileChooser後,根據Intent返回的uri獲取路徑的時一直返回null。 這個問題很奇怪,最

出現the system is running in low-graphics mode解決方法

當虛擬機器重啟時出現the system is running in low-graphics mode時,是因為Ubuntu16.04啟動不了圖形介面,如下圖 此時輸入命令修改許可權: df -h cd /etc/X11 sudo cp xorg.conf.fails

SQL Server2008附加數據庫之後顯示為只讀解決方法

這一 -- 技術 false log 美好 使用 com 你會 方案一: 碰到這中情況一般是使用的sa賬戶登錄的,只要改為Windows身份驗證,再附加數據庫即可搞定。 方案二: 使用sa登錄SQL Server2008附加數據庫,附加之後數據庫為只讀的,然後點數據庫

SqlServer sa 戶登錄失敗的解決方法

regedit 缺省 microsoft 決定 gedit 重新 local 驗證方式 word 一.控制面板-》服務-》MS SQL SERVER-》登錄--》本地系統帳戶--》重新啟動MS SQL SERVER用windows驗證登陸查詢分析器--》執行 sp_pass

A master URL must be set in your configuration問題解決方法

2.0 erro reflect sse native span pre park ons 1 Using Spark‘s default log4j profile: org/apache/spark/log4j-defaults.properties 2 16/1

【Android】getActionBar()為null解決方法總結

andro 調用 種類 ref code trac page 沒有 stack 前言 在使用 ActionBar的時候,有時候會爆出空指針異常,這是由於應用沒有獲取到 ActionBar 導致的,而導致應用沒有獲取到 ActionBar 的原因比較多。

[轉]Linux下is not in the sudoers file解決方法

出現 aud 名稱 vim file brief order mage ima 來源: http://jingyan.baidu.com/article/2a1383284bb3e8074a134f2d.html 當我們使用sudo命令切換用戶的時候可能會遇到提示以

mycat啟動報錯UnknownHostException(Temporary failure in name resolution)解決方法

temporary exc ava ora wrap 命令 temp lex PE 重啟命令 ./mycat restart 查看日誌 cd logs tail -f wrapper.log 報錯信息 INFO | jvm 2 | 2018/05/09 11:28

mysql ”Invalid use of null value“ 解決方法

font hang value time pda size 解決 SQ 通過 1.問題描述 因為要更改"information"表中的"編號"列為非空,使用數據庫查詢語句“alter table information modify ‘編號‘ varchar(255) no

Python編譯出現錯誤SyntaxError: Non-ASCII character 'xe7' 解決方法

mage wan tps png art tail error: itl 解決 轉載個解決辦法:https://blog.csdn.net/wangchao701123/article/details/57084244 轉自https://blog.csdn.net/jim

no libsigar-amd64-linux.so in java.library.path 解決方法

sig down 出現 兩個文件 html pan amd color sigar 關於sigar的介紹可以參考這邊博文 :https://www.cnblogs.com/luoruiyuan/p/5603771.html 在Linux上運行java程序時出現 no lib

SyntaxError:operator not allowed in environment markers的解決方法

在部署測試環境時,pip install XXX,出現瞭如下問題: “File “/usr/lib/python2.7/site-packages/pkg_resources.py”, line 738, in comparison raise SyntaxError(repr(cop)+” o

Django is not importable in this environment的解決方法

軟體版本是python3.4.3,Django是2.0.7 (1)file—>open,找到自己的工程檔案(工程名)開啟 (2)file—>settings—>Project Interpreter (3)點選show all (4)隱藏掉連線其他工程的直譯器 (5

錯誤Name node is in safe mode的解決方法

將本地檔案拷貝到hdfs上去,結果上錯誤:Cannot create file/test.txt._COPYING_. Name node is in safe mode. 這是因為在分散式檔案系統啟動的時候,開始的時候會有安全模式,當分散式檔案系統處於安全模式的情況下,檔案系統中的內容不允許修