我試圖從數據庫中消除隱式轉換。刪除SQL Server中的隱式轉換
我在UpdatedByID字段中添加了CAST語句,因爲這是一個Char(10),它將連接到FROM語句中的INT。但我仍然獲得隱式轉換。我必須失去明顯的東西?
SELECT DISTINCT ba.BookingID INTO #temp1
FROM BookedItemsAudit_tbl bia
INNER JOIN BookingAudit_tbl ba ON bia.BookingAuditID = ba.BookingAuditID
INNER JOIN User_tbl u ON u.UserId = CAST(ba.UpdatedById AS INT)
WHERE bia.BookedItemTypeId IN (1, 58, 60)
AND u.UserId = 5
這裏的時候提示出現在執行計劃
是削減模式BOOKINGAUDIT_TBL
Column_name Type Length
BookingAuditID int 4
BookingID int 4
UpdatedByID CHAR 10
UpdatedBy varchar 50
UpdatedDate datetime 8
TotalMargin money 8
BookingStatusId int 4
USER_TBL
Column_name Type Length
UserId int 4
FullName varchar 100
UserName varchar 20
完整的查詢和模式在這個環節
連接的是錯誤信息
您需要發佈表格的模式以及您正在收到的確切錯誤消息。 – 2013-03-06 11:13:51
爲了使您的問題更易於訪問,請鏈接到http://sqlfiddle.com/上的一個示例,其中包含導致失敗的一些數據。 – Tass 2013-03-06 11:16:01
我們是否還可以看到BookedItemsAudit_tbl – 2013-03-06 11:28:17