2014-10-27 226 views
0

嘿,夥計們是新來的MySQL development..I HVE寫了一些代碼,就像從對象訪問枚舉

CREATE TABLE CUSTOMERS(
    ID INT    NOT NULL, 
    NAME VARCHAR (20)  NOT NULL, 
    AGE INT    NOT NULL, 
    ADDRESS CHAR (25) , 
    SALARY DECIMAL (18, 2), 
    PRIMARY KEY (ID) 
); 


INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) 
VALUES (1,'aff',2,3,5); 



set @a := CASE WHEN NAME = 'aff' THEN 5 ELSE 3 END; 

當我運行varibale @a它拋出錯誤,如Schema Creation Failed: Unknown column 'NAME' in 'field list':

誰能幫助我..一個SQL小提琴例子是真的apreciated ..Thanx

+0

你的標題中的「objects」是什麼意思?而且我也沒有看到你使用枚舉的地方。 – Sebas 2014-10-27 16:33:41

回答

1

從表中得到的東西,你必須使用一個SELECT查詢:

SET @a := (SELECT CASE WHEN name = 'aff' THEN 5 ELSE 3 END 
      FROM CUSTOMERS 
      LIMIT 1); 

DEMO

當使用SELECT作爲一個表達式,它必須只返回1行,這就是爲什麼我添加了LIMIT 1條款。

+1

@JNevill你的小提琴是空的。我創建了自己的一個。 – Barmar 2014-10-27 16:41:40