더북(TheBook)

특성들을 재결합해야 할 때, 예를 들어 메일링 리스트를 만들 때는 SQL의 문자 연결 기능을 이용하면 쉽게 원래 데이터를 얻을 수 있다. 방법은 코드 1-4와 같다.

코드 1-4 SQL의 문자 연결 기능을 이용해 원래 데이터 생성

SELECT AuthorID AS AuthID, CONCAT(AuthFirst,

  CASE

    WHEN AuthMid IS NULL

    THEN ‘ ‘

    ELSE CONCAT(‘ ‘, AuthMid, ‘ ‘)

  END, AuthLast) AS AuthName,

  CONCAT(AuthStNum, ‘ ‘, AuthStreet, ‘ ‘,

      AuthCity, ‘, ‘, AuthStProv, ‘ ‘,

      AuthPostal, ‘, ‘, AuthCountry)

    AS AuthAddress

FROM Authors;


 

Note ≣

DB2, SQL Server, MySQL, 오라클, PostgreSQL 모두 CONCAT() 함수를 지원하는데, DB2와 오라클은 매개변수를 두 개만 받으므로 여러 문자를 연결하려면 CONCAT() 함수를 중첩해서 사용해야 한다. ISO 표준은 문자열 연결에서 || 연산자만 정의해 놓았다. DB2, 오라클, PostgreSQL은 || 연산자를 지원하지만, MySQL은 서버의 sql_mode 설정 값에 PIPE_AS_CONCAT를 포함할 때만 지원한다. 액세스는 CONCAT() 함수를 지원하지 않지만 &나 +로 문자열을 붙일 수 있다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.