당신은 ROW_NUMBER()
를 사용할 수 있습니다
with normalized_projects as (
select id,
unnest(string_to_array(sector, '#')) as sector,
project
from project
)
select p.id as project_Id,
row_number() over (partition by p.id order by sector) as new_sector_id,
p.sector,
p.project, s.sector_id
from normalized_projects p
join sector s on s.sector_name = p.sector;
당신은 또한 당신이
이
SQLFiddle 예는 모든 장소에 걸쳐 해당 쿼리를 반복하지 않아도 그 정규화 된 구조에게 볼을 고려하는 것이 좋습니다
select ROW_NUMBER() OVER (PARTITION BY project_id ORDER BY sector) as id,
project_id,
sector
from (select id as project_id,
unnest(string_to_array(sector, '#')) as sector
from project) as t;
출처
2014-09-17 07:24:53
KIM
괜찮 았지만 작동하지 않는 섹터를 사용하여 다른 테이블에 가입 하시겠습니까 ?? – Ash
나는 같은 쿼리에서 불충분 한 후 해당 섹터를 사용하여 섹터 테이블에 프로젝트 테이블에 가입하고 싶습니다. 우리가 할 수있는 그것 ?? – Ash
@ user3789087 : 확실히 편집하십시오. –