sql

2016-03-20 12 views
1

'daki ölçekleyici değişkenini bildirmelidir MSSQL'de iki tablom var ve basit bir birleştirmeyi yapmaya çalışıyorum ancak katılma deneyimim olsa bile bu sorunu çözemedim. Ben sorguyu çalıştırdığınızdasql

declare @Table1 table 
(
UserName nvarchar(4) 
) 
declare @Table2 table 
(
UserName nvarchar(4), 
UserSurname nvarchar(50) 
) 

SELECT * FROM @Table1 JOIN @Table2 ON @Table1.UserName = @Table2.UserName 

, ben gibi bir hata ' 'Table1 @' skaler değişkeni bildirmeniz gerekir.' Olsun ve 'skaler değişkeni beyan etmeliyiz' (Tablo2). ' Aynı öznitelik adına sahip iki tabloya katıldım ve bu şekilde kalmalı. Neden böyle bir hata alıyorum? Zaman ayırdığın için teşekkürler.

Böyle tablo değişkenleri diğer ad gerekir

cevap

1

:

SELECT * 
FROM @Table1 AS Table1 
JOIN @Table2 AS Table2 ON Table1.UserName = Table2.UserName 
+1

Veya bu düzenli tanımlayıcı isimlendirme kurallarına uymayan beri sütun özelliği için kullanılan tablo adları içine (https://msdn.microsoft.com/ tr-us/library/ms175874.aspx): 'SELECT * FROM @ Table1 JOIN @ Table2 ON [@ Table1] .UserName = [@ Table2] .UserName'. –