의 쿼리에서 중복 레코드를 제거 나는 다음과 같은 두 테이블이 있습니다이 개 테이블
표 1 : 송장을
invoiceID CLIENTNAME
| 1 | 토니
| 2 | 루드비히
| 3 | 랄프
표 2 : invoice_items
invoiceID itemDescription
| 1 | 평면 모니터 LED 등 ...
| 1 | HP 프린터 잉크젯 등 ...
| 2 | 노트북 wahtever 등 ...
나는 "송장"테이블에서 송장을 쿼리하려고하지만 사용자가 항목 설명을 검색 할 수 있습니다.
나는
$query = "SELECT i.*, ii.invoiceID, ii.itemDescription from invoices i, invoice_items ii, WHERE ii.itemDescription like "%'.$_GET["s"].'%" AND i.invoiceID = ii.invoiceID";
를 작성하지만 중복이 것입니다 결과가있다. 어떤 아이디어? 당신은 당신이 별개의 호출 할 수 있습니다 ..하지만이 경우에 당신이 (당신이 당신의 결과에 descriptio 필요하지 않은 경우) 당신이
$query = "SELECT distinct i.col1, i.col2, i.col3, ii.invoiceID, ii.itemDescription
from invoices i, invoice_items ii,
WHERE ii.itemDescription like "%'.$_GET["s"].'%"
AND i.invoiceID = ii.invoiceID";
yyou이 방법을 별개의 obtaion 수 explicitally 필요한 열을 선택해야 할 경우
이것은 당신이 중복 행을 don'have ..하지만 일부 열이 같은 .. – scaisEdge
이 @LudwigArcache 작동 DISTINCT하지만 대답은 필요가 업데이트되어야하는 다음 .. .. 단지가 될 수 ii.itemDescription을 SELECT 목록에서 제거합니다. 남은 경우 DISTINCT는 invoice_item 테이블의 고유 한 인보이스 열을 제공하지 않습니다 – Matt
@ LudwigArcache 정확한 예상 결과를 추가하여 질문을 업데이트 해보십시오. – scaisEdge