mysql 임시로 필드(가상 필드) 넣기

조회수 1881회

안녕하세요.


+-------+---------+
| Field |count    |
+-------+---------+
| test  | 4       |    <- 테이블에 있는 필드 
+-------+---------+
| etc   | 2       |    <- 테이블에 없는 필드 임시로 필드 넣음.
+-------+---------+

이렇게 mysql 테이블에 없던 필드를 임시로 넣고 싶은데요. 어떤식으로 하면되나요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

2 답변

  • 없던 필드를 추가하시려나보네요? 그런데 필드를 임시로 넣는다는건 어떤 경우인가요? 테이블에 데이터가 한 번 쌓이면 나중에 테이블 구조가 변경될 때 그걸 migration해 주어야 하기 때문에 구조변경은 신중히 하는 작업이라서요. 임시필드의 용도가 궁금하네요.

    일단 테이블에 칼럼을 추가하는건 Alter table을 이용하면 됩니다.

    ALTER TABLE table_name
    ADD column_name datatype
    
  • 고유해야 하는 필드(name)에 UNIQUE INDEX를 만들고 다음 중 하나를 사용합니다.

    1. 표준 INSERT(이름이 이미 존재하는 경우 오류 처리).
    2. INSERT IGNORE(이름이 이미 존재하는 경우 조용히 실패하고 (오류가 아닌) 경고가 표시됨)
    3. INSERT... ON KEY DUPLICATE UPDATE(이름 끝에 UPDATE를 실행하는 것은 이미 존재합니다. 스케일러 주제에서 이 기사 참조.
    INSERT INTO users (full_name, login, password) 
      SELECT 'Mahbub Tito','tito',SHA1('12345') FROM DUAL
    WHERE NOT EXISTS 
      (SELECT login FROM users WHERE login='tito');
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)