2014-01-28 158 views
-3

我有一個表Brands(有關列是BrandName)和Products(有關列ProductName)。如何合併這兩個列,以便在SELECT語句的結果的結構將是如何合併兩個SQL Server表列?

BrandName - ProductName 

例如:如果BrandName是「金寶」和產品名稱是「新英格蘭雜燴」時,select聲明應該返回

Campbell - New England Chowder 

這裏是Products

SKU int PK 
ProdName char(10) 
Description varchar(max) 
BrandID int (FK) ... etc with other columns 

在這裏,結構是Brands結構

BrandID int PK 
BrandName char(20) 
Logo varbinary 
+0

請顯示示例數據和兩個表的結構。 –

+0

您可以在這裏分享你的數據庫的結構:http://schemadeck.com/zqzzn6 – nathancahill

+2

不要使用'CHAR(N)'爲可變長度的10個或更多字符的任意字符串 - 使用'VARCHAR(n)的'代替。我建議僅對最大字符串使用'CHAR(n)'。 3-5個字符都是相同的長度,例如ISO國家代碼('USA','GER'等)或ISO貨幣代碼或類似的東西 - 但從來沒有其他的東西 –

回答

2

這將是這個查詢 - 兩個表之間的簡單連接和名稱的連接。我還使用RTRIM函數來刪除多餘的空格,因爲您使用的是char數據類型。

SELECT RTRIM(b.BrandName) + ' - ' + RTRIM(p.ProductName) 
FROM Brands b 
INNER JOIN Products p ON b.BrandID = p.BrandID