Tôi có một cột nvarchar
ở một trong các bảng của tôi. Bây giờ tôi cần phải chuyển đổi các giá trị cột để INT
loại ..Cách chuyển đổi cột Nvarchar thành INT
Tôi đã cố gắng sử dụng
cast(A.my_NvarcharColumn as INT)
và
convert (int, N'A.my_NvarcharColumn')
Khi tôi chạy truy vấn của tôi tôi nhận được lỗi như
Chuyển đổi không thành công khi chuyển đổi giá trị nvarchar '23454542' thành kiểu dữ liệu int.
hi tôi đang đăng toàn bộ đoạn mã của tôi
SELECT A.objID, name, des, right(Replace(Ltrim(Replace(substring(my_nvarcharcolumn,1,9), '0', ' ')), ' ', '0'),10) AS new_nvarcharcolumn
INTO #tmp1
FROM [database].[dbo].[tblname] AS A
INNER JOIN (SELECT * FROM [database].[dbo].tblname1 WHERE sourceID = 32) AS AI ON source = A.objID
INNER JOIN [database].[dbo].tblname2 AS I ON I.ObjectID = A.Source
SELECT MAX(m_dAddDate) AS date_Asof, dnum INTO #tmp2 FROM
(SELECT * FROM [database].[dbo].tblname WHERE senior <> '' AND class = 'SSS') AS A
GROUP BY dnum
SELECT DISTINCT A.* INTO #tmp3 FROM #tmp1 AS A
INNER JOIN #tmp2 AS SD ON SD.dnum =cast(A.new_nvarcharcolumn as INT)
INNER JOIN database.[dbo].tbl4 AS M ON M.dnum = cast(A.new_nvarcharcolumn as INT) AND SD.date_Asof = M.adddate
Hoạt động diễn xuất hoàn toàn phù hợp với tôi, bạn có thể đăng đoạn mã hoàn chỉnh, có thể là lỗi do một cái gì đó khác – Seasoned
hi marc_s, nope không hoạt động, nó nói Error conversion datatype nvarchar to bigint – user1348424
Cast đang hoạt động tốt – Habib