반응형
< 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
'IT > SQL' 카테고리의 다른 글
[SQL] 월별 주문, 방문, 가입, 신규주문/ 재주문 쿼리문 (0) | 2022.09.20 |
---|---|
[SQL, QuickSight] 누적일 비교 쿼리문 (전 월 누적일, 전 년 동 월 누적일) (0) | 2022.09.20 |
[SQL] 전월 동일 시점 누적 데이터 비교 쿼리문(ft. Line Chart) (0) | 2022.06.13 |
[SQL] 월별 방문자수(UV), 월별 가입수 쿼리문 (0) | 2022.05.27 |
[SQL] 상품등록 후 최초 30일 판매 데이터 쿼리문 (0) | 2022.05.27 |
댓글