iT邦幫忙

0

MSSQL JOIN 欄位空白效能問題請教

  • 分享至 

  • xImage

您好:
若同一個TABLE 中,
類別 ,條碼,條碼_備註
1 ,A123456789011 ,空白
1 ,A123456789012 ,1
1 ,A123456789012 ,2

2 ,A123456789011 ,空白
2 ,A123456789012 ,1
2 ,A123456789012 ,2

這樣關聯時

select * from
( select 類別 ,條碼,條碼_備註 from table1 whrer 類別=1 )A
left join
( select 類別 ,條碼,條碼_備註 from table1 whrer 類別=2 )B
on A.條碼=A.條碼 and B.條碼_備註=B.條碼_備註

這樣情況下 條碼_備註 99% 為空白
與 條碼_備註 100% 非空白

在關聯時,有效能上的影響嗎?
謝謝

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
fuzzylee1688
iT邦研究生 3 級 ‧ 2023-10-20 09:27:52

0
kawa0710
iT邦研究生 5 級 ‧ 2023-10-20 09:31:35

如果你的空白是指null, 會!

如果是指空字串, 有建索引且「條碼_備註」是固定內容, 效能降低不多.

話說你的ON條件是正確的嗎?
但不管如何,「條碼_備註=條碼_備註」這種在長文字欄位join遲早會踩到效能的坑,
可以的話盡早重構這個欄位吧。

我要發表回答

立即登入回答