程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> sqlserver 多表聯系關系時在where語句中慎用trim()辦法

sqlserver 多表聯系關系時在where語句中慎用trim()辦法

編輯:MSSQL

sqlserver 多表聯系關系時在where語句中慎用trim()辦法。本站提示廣大學習愛好者:(sqlserver 多表聯系關系時在where語句中慎用trim()辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是sqlserver 多表聯系關系時在where語句中慎用trim()辦法正文


相似以下:

select A.key,B.key,C.key from A,B,C where trim(A.key)=trim(B.fk) and trim(A.col)=trim(C.pk)。

在主表A(200多筆記錄)聯系關系附表B(4萬多筆記錄)時用了1秒鐘時光,該值在分歧機械履行能夠有所差別,但比不加trim速度略微慢一些,然則不是特殊顯著。

其sql語句相似以下:

select A.key,B.key from A,B where trim(A.key)=trim(B.fk)

然則,在下面sql語句中參加第三個表C(兩筆記錄)後,Sql語句以下:

select A.key,B.key,C.key from A,B,C where trim(A.key)=trim(B.fk) and trim(A.col)=trim(C.pk)

全部sql語句履行了差不多70多秒鐘。比不加trim()辦法多發費了60奪秒。

後來,經由過程若干試驗發明這類where中多表聯系關系前提,假如不在右邊聯系關系前提處加trim()辦法便可到達根本同等於普通多表聯系關系的效力。

改進後的sql語句以下:

select A.key,B.key,C.key from A,B,C where A.key=trim(B.fk) and A.col=trim(C.pk)

此條sql語句履行效力根本同等於where語句中無trim()的sql語句速度了。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved