2011-07-29 100 views
0

只是一個快速的問題。檢查了許多網站無濟於事!我需要堆棧幫助!選擇與添加IDENTITY列

SQL精簡版!

有一個查詢:

SELECT w.url 
FROM Company c, Website w, Users u 
WHERE w.companyID = c.companyID AND c.userID = u.userID AND u.userID = 23 
ORDER BY w.url ASC; 

我知道它不是最好的查詢,但基本上它返回的網站,其中用戶ID是23的列表,它返回像一個列表:

URL 
----------------- 
facebook.com 
stackoverflow.com 
google.com 
... 
etc 

不過,我想在SELECT語句中添加一列。所以我的結果會像這樣:

URL    | ID 
------------------|--------- 
facebook.com  | 1 
stackoverflow.com | 2 
google.com  | 3 
...    | ... 
etc    | onward 

我試過很多方法,包括子查詢和東西,但我使用SQL CE!當我選擇我的列時,我不喜歡運行時輸入「=」。

我認爲它是一個簡單的解決方案,但我不能做IT :(

我用盡的那

SELECT w.url, count(*) as id 
SELECT w.url, IDENTITY as id 

和多種變化

編輯:!我想的ID從1遞增儘管如此,很多唱片還是有無數的唱片回報或訂單或者是什麼!

乾杯,

亞歷克斯

+0

爲什麼不添加一個Id到'網站'? –

+0

網站確實有一個ID,但我希望id列能夠從1運行到有多少條記錄,無論有哪些記錄被返回! –

回答

0
SELECT w.url, ROW_NUMBER() OVER (ORDER BY w.url ASC) 
FROM Company c, Website w, Users u 
WHERE w.companyID = c.companyID AND c.userID = u.userID AND u.userID = 23 
+1

OVER關鍵字不受支持我不認爲:這就是發生的錯誤。除非它的ROW_NUMBER()不支持 –

+0

@ AlexMorley-Finch,嗯,我剛剛注意到你已經標記了Sql-CE的問題,我不相信支持ROW_NUMBER()...我的歉意。 –