我比較兩個不同數據庫中的帳號以確保帳號在兩者中都存在。一個數據庫中的帳戶字段爲nvarchar
,另一個爲varchar
。我做了一個演員將他們都投到varchar(12)
並加入他們看看哪裏沒有一場比賽。如果有少於12個字符的帳號,則認爲它不匹配。我假設每個字段中的額外字符導致了這個問題?加入varchar和nvarchar
table1 - accountnumber(nvarchar(255))
table2 - accountnumber(varchar(20))
select * from
table1
left outer join table2 on table2.accountnumber = table1.accountnumber
在這個例子中,兩個表都有一個12345678號的帳號,但是這個連接不起作用。我不確定它是否是數據類型不匹配或空白區域或其他。
- 添加 - 我應該補充一點,table2中的數據實際上源於Oracle數據庫,它以varchar2(12字節)的形式存儲。我將它導入SQL Server數據庫,並以varchar(20)形式存儲。我不確定這是否有所作爲。
你到底需要什麼幫助? –
連接兩個表table1中 - ACCOUNTNUMBER(爲nvarchar(255)) 表2 - ACCOUNTNUMBER(VARCHAR(20)) SELECT * FROM表1 左外連接上table2.accountnumber表2 = table1.accountnumber –
我們是否可以假設你是使用SQL Server? – bonCodigo