join 질문드립니다

join 질문드립니다

QA

join 질문드립니다

답변 1

본문

free 자유게시판이 있는데 text 필드를 많이 추가해야 해서 

free_data 만들고 여기에 text 필드를 많이 추가했습니다

로그인한 사용자들에게는 free_data 필드를 같이 불러와서 뿌려줘야하는데요

 

아래처럼 해보고 있는데 안되네요;;;

select *,(select content1, content2, content3,content4 from g5_write_free_data where wr_id=wr_id) from g5_write_free order by wr_num desc limit 0,10

이 질문에 댓글 쓰기 :

답변 1


SELECT a.*, b.content1, b.content2, b.content3, b.content4
FROM g5_write_free a
LEFT JOIN g5_write_free_data b ON a.wr_id = b.wr_id
ORDER BY a.wr_num DESC
LIMIT 0, 10

자꾸 질문 드려서 송구한데요;;;
SELECT a.*,  b.*  이렇게 했더니 b 테이블에 데이터가 없으면 a 테이블값도 안나오네요;;
b테이블에는 데이터가 없는것도 있어서요
a테이블은 무조건 다 나와야하거든요


$columnQuery = "SELECT GROUP_CONCAT(CONCAT('b.', COLUMN_NAME) SEPARATOR ', ') as column_list
                FROM INFORMATION_SCHEMA.COLUMNS 
                WHERE TABLE_NAME = 'g5_write_free_data' 
                AND TABLE_SCHEMA = '데이터베이스이름작성'";

$result = mysqli_query($conn, $columnQuery);
$row = mysqli_fetch_assoc($result);
$bColumns = $row['column_list'];

$finalQuery = "SELECT a.*, {$bColumns}
               FROM g5_write_free a
               LEFT JOIN g5_write_free_data b ON a.wr_id = b.wr_id
               ORDER BY a.wr_num DESC
               LIMIT 0, 10";

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
filter #join ×
전체 35
© SIRSOFT
현재 페이지 제일 처음으로