2026, 새로운 도약을 시작합니다.

[아래추가질문] 디비 테이블에 자료가 없을경우 표기방법 채택완료

디비명
1번. i_tester < 회원접수 자료
2번. order_list < 주문내역
3번. pay_transaction < 결제내역

1번 목록 자료에 (2번=3번) 매칭해서 3번 필드(pay_method) 값만 출력합니다.

3554585928_1613557431.1772.jpg

위 이미지 정소영 두명이 2번 3번 자료에는 존재하지 않습니다.
위 이미지 김윤아만 2번 3번 자료에는 존재합니다.

자료가 있으면 당연히 내용이 표기 됩니다. 근데... 자료가 없을경우 "빈공간"이나 "없음"으로 하고 싶은데, 위에 값으로 동일하게 표기됩니다.

----/----

$sql = "SELECT * FROM order_list a LEFT JOIN pay_transaction b ON a.oid = b.moid WHERE a.can_number like '%$canno%'";

$result = mysql_query($sql);
$row = mysql_fetch_array($result);

---/----

$pay_method = $row['pay_method']; 이값을 표기 할려고 합니다.

답변 2개

채택된 답변
+20 포인트
Copy


$pay_method = $row['pay_method'];

이 부분을 아래처럼 수정해 보세요.

Copy


$pay_method = ($row['pay_method'] !== null && $row['pay_method'] !== "")?$row['pay_method']:'없음';

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

감사합니다.
동일하게 없음만 출력 됩니다.
안됩니다.
테이블 세개 다 해당 데이터만 따로보여주셔도 도움드릴수 있을듯 한데
제 생각에는 join 을 inner 나 right 나 수정해서 한번 돌려보셔요 .
감사합니다.
다시 정리해서 추가 질문 올렸습니다.
한번 더 봐주실래요?

댓글을 작성하려면 로그인이 필요합니다.

order_list (2번자료)에 정소영이 없는데 left join을 해서 어떻게 정소영이 나온다는 것인가요?

left join은 order_list에 있는 자료만 나오는 것 인데요??

테이블 필드와 자료를 알 수있도록 질문 해야지 액셀자료를 보고 테이블 구조가 어떻게

생겼는지 알수가 있나요 어디

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

이미지는 1번 디비 i_tester 출력 자료입니다.
2번. order_list < 주문내역
3번. pay_transaction < 결제내역

2번=3번 매칭해서 3번 필드(pay_method) 값만 출력합니다.
감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고