2009-06-11 49 views
0

我正在使用它自己的數據庫上的第三方軟件包。我們正在將它用於應用程序中的用戶管理。我們有一個API來檢索數據和訪問信息。由於信息每天都在變化,我們只能在應用程序中使用user_id作爲僞FK,而不是像他們的用戶名或名稱那樣存儲信息。用戶信息可以改變(如人名...不問)。SQL - 將字段添加到查詢排序由

我需要做的是排序和篩選(分頁結果)我的查詢之一,由人的名字,而不是我們擁有的user_id。我能夠事先獲得用戶信息的數組。我最好的辦法是創建一個臨時表,添加一個額外的字段,然後按這個排序?

在數據庫中使用MySQL。

回答

0

您可以將數據組合到一個對象數組中,然後對數組進行排序。

+0

看起來我只需要返回所有結果併合並它們,然後使用Linq。感謝您的驗證。 – user121350 2009-06-11 14:25:55

0

是的,但你應該具體考慮在那裏你會做臨時表。如果你在你的web應用程序中這樣做,那麼你的web服務器就會停滯不前,爲你的整個表分配內存,這對性能來說可能是很糟糕的。另一方面,按照eschneider的建議加載所有對象並對其進行排序可能會更容易。

0

如果您將user_id作爲參數,則可以創建一個用戶定義的函數,該函數在存儲過程中檢索您的用戶名。

0

數據庫位於不同的服務器上。出於所有目的,我們通過API訪問它,然後將數據轉換爲數組。

現在,我已經實現了使用LINQ來過濾和排除對象數組的解決方案。

感謝您的提示,並幫助我走向正確的方向。