2013-05-09 104 views
1

我是sql新手。 我想在組合框查看id + ' ' + namedisplaymemberidvaluemember,使SQL就像:在一張表中選擇多列

SELECT id, id + ' ' + name from tblproduct; 

但是,這是行不通的!我非常感謝每一位能夠幫助我的人!

+1

你能張貼您的前端代碼? – 2013-05-09 09:48:27

+0

請參閱此鏈接http://www.dotnetfunda.com/forums/thread6294-display-two-column-values-in-a-combo-box.aspx – pudaykiran 2013-05-09 09:50:00

回答

1
SELECT id,cast(id as varchar(10)) + ' ' + name from tblproduct; 

如果如果你願意,你可以點擊下面的鏈接查看演示數據類型類型爲nvarchar

SELECT id,id + ' ' + name from tblproduct; 

DEMO

+0

好吧!列ID和名稱的類型是nvarchar! – 2013-05-09 10:32:51

+0

然後不需要轉換隻使用+符號。檢查更新的答案 – AnandPhadke 2013-05-09 10:44:22

+0

它是這樣說的: 無法解析SELECT語句中列2的排序規則衝突。 – 2013-05-09 10:56:30

0

問題的原因是'Id'列的類型是integer或uniqueidentifier。 如果從int或uniqueidentifer爲varchar轉換ID的類型,它會工作

+0

中的兩列具有相同的排序規則!列ID和名稱的類型是nvarchar!它說「衝突列2」 – 2013-05-09 10:34:31

3

嘗試鑄造ID來VARCHAR,給別名與被選擇列:

SELECT id AS Id, CAST(id AS VARCHAR) + ' ' + name AS IdAndName FROM tblproduct; 

設置valuemember = "Id"displaymember = "IdAndName"在你的代碼。

+0

好吧!列ID和名稱的類型是nvarchar! – 2013-05-09 10:33:07

1

下面是查詢語句:

SELECT CAST(id AS VARCHAR) + ' - ' + name AS Product FROM tblproduct; 

它顯示像結果:

Product 
    --------------------------- 
    1 - Microsoft Paint 
    2 - Microsoft Notepad 
    3 - Microsoft PowerPoint 
    4 - Windows 8