[請益] 想請教大家一個有關SQL Select的問題~

看板Web_Design作者 (等待幸福)時間18年前 (2006/07/27 22:14), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串1/1
先說明我想問的問題吧~ 我目前使用的開發環境是.NET 2005/2003 與SQL Server 2005/2000。 假設目前我的資料庫中,有很多資料都是用varchar(1)或(2)的方式來儲存的, 比方說,性別我用'1'代表男生,用'2'代表女生。 然後學歷用'1'代表大學生,'2'代表高中生,'3'代表國中生、'4'代表....等等。 但我希望當我把資料select出來後,他是以中文的形式來呈現。 想請問大家,如果碰到這樣的問題,大家都是怎麼解決的呢?? 說一下我自己的作法, 我常用的方法是先在資料庫中的另一個資料表定義好每個數字所對應的中文, 然後用JOIN的方式把資料撈出來,在加到dataset,最後再bind到datagrid中。 但是這個方法在類別很多(比方說職業類別)的時候比較好用, 當碰到只有單純的「男」「女」,或是「已婚」「未婚」之類的,就顯的有點浪費了。 所以我的另一個作法是,把資料先用sqlDataReader一筆一筆抓出來, 進行判斷之後再assing到DataRow->DataTable->DataSet裡面。 可是我想問問大家,有沒有辦法在下SQL的時候就做到這樣的工作呢?? 或者大家有沒有什麼更好的做法哩?? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.192.77

07/27 22:23, , 1F
那個欄位改開成enum形態?
07/27 22:23, 1F

07/28 10:34, , 2F
用case when試試看
07/28 10:34, 2F

07/28 10:37, , 3F
例如性別,(case when gendar='M' then '男' else '女' end)
07/28 10:37, 3F

07/28 10:39, , 4F
打錯字 gender 囧
07/28 10:39, 4F
文章代碼(AID): #14oCe-G9 (Web_Design)