본문 바로가기
MySql

MySQL add new column in table with value depending value of another column in same table

by 베이스 공부 2021. 1. 13.
반응형

나는 Mysql에서 처음이다. 동일한 테이블의 다른 열 값에 따라 값이있는 테이블에 열을 추가하고 싶습니다. 예를 들어 다음과 같이 company_table이 있습니다.

fldId | companyName | date
--------------------------------
  1   | adeco       | 2012-01-12    
  2   | mic         | 2001-03-09
  3   | manpower    | Null
  4   | linar       | Null
  5   | dlank       | 1999-02-28

'날짜'열의 값에 따라이 테이블에 'fldState'열을 추가하고 싶습니다. 예를 들어 '날짜'열의 값이 Null이 아니면 'fldState'의 값은 1이어야하고 Null이면 'fldState'의 값은 아래와 같이 2가되어야합니다.

  fldId | companyName | date        | fldState
  --------------------------------------------
  1     | adeco       | 2012-01-12  | 1
  2     | mic         | 2001-03-09  | 1 
  3     | manpower    | Null        | 2
  4     | linar       | Null        | 2
  5     | dlank       | 1999-02-28  | 1

 

해결 방법

 

기존 테이블에서 새 열을 추가 할 수 있도록 ALTER 문을 만들어야합니다.

ALTER TABLE mytableName ADD fldState INT;


문이 성공적으로 실행되면 이제 모든 레코드를 업데이트 할 수 있습니다.

UPDATE  myTableName
SET     fldState = IF(date IS NULL, 2, 1)

 

참조 페이지 https://stackoverflow.com/questions/14500911

 

 

반응형

댓글