2011-09-21 94 views
2

我已經在sql server中創建了一個表,並且tabel有一個Employee的信息。有一列可以確定員工是男性還是女性。即男性女性。現在我需要把所有和所有更改SQL表中的性別值

表結構是:

CREATE TABLE Employee (
FName char(50), 
LName char(50), 
Address char(50), 
Gender char(10), 
Birth_Date date) 
+0

是什麼的數據類型男性/女性專欄? – Andreas

+5

是Chaz Bono在那張桌子裏? – Ray

+0

@sharmile你可以發表表格結構嗎? –

回答

6

怪異。

作爲一個基本的例子,這樣的事情:

update employees 
set 
    gender = case gender 
     when 'Male' then 'Female' 
     when 'Female' then 'Male' 
     else 'Other' end 
+2

其他?真? ;) – Jason

+2

+1等。讓我發笑。我認爲這變得越來越複雜 –

+1

你會驚訝於我看到的一些個人數據......空洞,空白,很奇怪的東西......當然,我們不要假設在這些數據中只有兩種性別宇宙!作爲一般規則,在CASE語句中使用'ELSE'子句可以讓您擺脫困境。 –

5

這應該工作:

UPDATE dbo.Employee 
SET Gender =  
    CASE 
     WHEN (Gender = 'Female') 
      THEN 'Male' 
     WHEN (Gender = 'Male') 
      THEN 'Female' 
    END 
4

使用該腳本

UPDATE [Employee] 
SET [Gender] = CASE [Gender] 
WHEN 'Male' THEN 'Female' 
WHEN 'Female' THEN 'Male' 
END 
0
update employee 
set gender=case when gender='Male' then 'Female' 
when gender='female' then 'male' end