본문 바로가기
IT/SQL

[SQL] 문자열 더해서 출력하는 방법 (concat or ||)

by marketinkerbell 2022. 8. 30.
반응형

 

 

< AWS Redshift  PL/pgSQL 에서 문자열 더해서 출력하는 방법 >

 

 

2가지 방법이 있다

 

 

1.  || 기호를 쓰거나 (키보드상에 원화 기호랑 같은 키패드에 있는 | 짝대기 기호 두 번)

2.  concat 함수를 쓰거나 

 

 

 


 

 

<기호  ||  사용해서 문자열 연결하는 방법 >

 

 

select 

  s2_product_code as id
, it_explan2 as description
, it_cust_price  as price
, it_price  as sale_price
, it_img1 as img_link

from item_table

 

 

 

위와 같은 쿼리문의 결과로 price 컬럼과 sale_price 컬럼이 그냥 숫자만 나오는 상황에

 

 

 

 

숫자 뒤에 'USD' 라는 통화 정보를 붙여서 출력하고 싶다면 

 

 

아래와 같이 쿼리문을 작성해주면 된다 

 

 

 

select 

  s2_product_code as id
, it_explan2 as description
, it_cust_price || ' USD' as price
, it_price || ' USD' as sale_price
, 'https:/data/item/' || it_img1 as img_link

from item_table

 

 

 

컬럼명 뒤에 || 기호를 쓰고 연결할 문자를 적어주면 

 

 it_cust_price  || ' USD' 

 

아래와 같은 결과가 출력된다

 

 

 

 

 

 

 

 

 

 

 


 

 

<concat 함수 사용해서 문자열 연결하는 방법>

 

 

CONCAT (컬럼, 문자) 

 

 

 

select 

  s2_product_code as id
, it_explan2 as description
, concat(it_cust_price, ' USD') as price
, it_price || ' USD'  as sale_price
, it_img1 as img_link

from item

 

 

concat (it_cust_price, ' USD')  이것과

 it_cust_price  || ' USD'  이것은 같은 결과를 출력한다

 

 

 

 

 

 

오라클 SQL 에서는 (redshift 에서는)  || 이 기호를 사용하는게 더 편하다 

 

문자열을 여러개 연결하고 싶을 때 || 이 기호를 사용하면 그냥 쭉 나열 하면 되는데 

concat 을 사용하려 하면 중첩을 해서 사용해야 한다. 

 

 

 

예를 들어 'https://www..com/shop/'   과 it_id 컬럼과  '/' 슬래쉬문자를 연결하고 싶을 때 

 

 

concat 을 사용하면 아래와 같이 중첩을 해야하고

 

concat( concat('https://www..com/shop/', it_id)  ,'/')

 

 

 

기호 || 를 사용하면 아래와 같이 옆으로 쭉 나열 하면 된다. 

 

'https://www..com/shop/' || it_id  || '/'

 

 

 

 

 

 

 

 


 

 

구글 쇼핑 피드 만들 때 || 활용해서 문자열 연결한 예시 쿼리문

 

 

select s2_product_code as id
, it_name as title
, it_explan2 as description
, 'https://www.aaaa.com/shop/'|| it_id  || '/' as link
, it_cust_price || ' USD' as price
, it_price || ' USD' as sale_price
, 'https://xxxx.net/data/item/' || it_img1 as img_link
, it_brand as brand

from item_table

 

 

 

댓글