2017-03-22 1 views
0

특정 소포를 쿼리해야하는 postgreSQL db에 소포 테이블이 있습니다. : 나는 한 번에 하나씩 조회 할 수 있습니다하지만 난 한 쿼리에서이를 수행하는 방법을 알아낼 수 없습니다SQL 소포 쿼리

mun1: block 46 and lot 2 

mun2: block 1 and lot 1.1 
     block 2 and lot 6 
     block 2 and lot 7 
     block 5 and lot 2 
     block 11 and lot 1 

mun3: block 11 and lot 2 
     block 11 and lot 2.2 
     block 7 and lot 2 
     block 8 and lot 2 

MUN, 블록, 많은 ... 구문과 논리

전 어떤 제안 - 3 개 필드

select * from parcels where mun = 'mun1' and block = '46' and lot = '2' 
+0

몇 가지 샘플 데이터를 제공 할 수 있습니까? 당신의 질문은 분명하지 않다고 생각합니다. –

+0

@GiorgosAltanis check 편집 – ziggy

답변

0

이와 비슷한?

select * from parcels 
where (mun = 'mun1' and block = '46' and lot = '2') 
or (mun = 'mun2' and 
    (block = '1' and lot = '1.1' 
    or block = '2' and lot = '6' 
    or block = '2' and lot = '7' 
    or block = '5' and lot = '2' 
    or block = '11' and lot = '1' 
    ) 
) 
or (mun = 'mun3' and 
    (block = '11' and lot = '2' 
    or block = '11' and lot = '2.2' 
    or block = '7' and lot = '2' 
    or block = '8' and lot = '2' 
    ) 
) 
+0

괜찮아요, 이것은 제가 간절히하고자하는 논리입니다. – ziggy

+0

은 원하는 값으로 임시 테이블/테이블 변수를 생성하고 내부 조인을 수행하는 것이 더 간단 할 것입니다. –

+0

@MarshallTigerus would 당신은 당신의 대답을 공유하는 것을 좋아합니까? – ziggy