테스트 사이트 - 개발 중인 베타 버전입니다

여분필드 합계 쿼리문질문입니다 채택완료

aaab 7년 전 조회 3,424

A 게시판에서 A 테이블 말고

 

B테이블의 여분 필드 값의 합을 나타내려고 쿼리문을짜려고하는데  저렇게 쿼리문을 짜도

wr_id가 1 인 wr_4 값 한개 밖에안나오네요... 우선 다 나와야 합계를 구할텐데..

</p>

<p>$sql = "SELECT wr_4 FROM B

$result = sql_query($sql);

$row=sql_fetch_array($result);</p>

<p> </p>

<p><?=$row[wr_4]?></p>

<p>

이렇게 줬는데 wr_id 가 1 인 wr_4 값만 나오네요ㅠㅠ

뭐가문제일까요ㅠㅠ

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

답변 3개

채택된 답변
+20 포인트

$sql = "SELECT sum(wr_4) as sum4 FROM B";

$row = sql_fetch($sql);

 

echo $row['sum4'];

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

답변에 대한 댓글 1개

a
aaab
7년 전
한가지 더 여쭤보고싶은데요 현재 B게시판은 A게시판의 상세내용으로 쓰고있습니다.
그래서 현재 A 게시판에
A게시판 내용
-------------------
B 게시판 내용(A게시판의 상세)

이렇게 이루어져있는데

B게시판에서 위에서 질문한것처럼 wr_4값을 평균을내서 a 게시판에 나타내려고하는데
여기서 a게시판의 각 wr_id에 맞게 그 값을 나타내려면 어떻게해야하는지 궁금합니다ㅠㅠ
저렇게 view.skin에 하니 a게시판의 모든 게시글에서 다 나와서 문제입니다ㅠㅠ
where 절을 이용해줘야하나요?

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

네 B게시판에는 A게시판의 wr_id 값을 어딘가에 가지고 있어야 하고요

만약 B 게시판의 wr_1 번에 A게시판의 wr_id가 입력되어 있다치면

 

$sql = "SELECT AVG(wr_4) as avg4 FROM B WHERE wr_1=".$view['wr_id'];

$row = sql_fetch($sql);

 

echo $row['avg4'];   //이게 평균값입니다.

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

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

Policia
7년 전

sql_fetch_array는 실행할때마다 결과값을 "한행씩"불러옵니다

 

지금 방식으론 당연히 한행의 결과값밖에 안나옵니다

 

for나 foreach while문등의 반복문으로 결과값을 뿌려주어아합니다

</p>

<p>$sql = "SELECT wr_4 FROM B ";</p>

<p>$result = sql_query($sql);</p>

<p> </p>

<p>while($row=sql_fetch_array($result)){</p>

<p> echo $row[wr_4];</p>

<p>}</p>

<p>

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

답변에 대한 댓글 2개

a
aaab
7년 전
답변정말감사합니다..
한가지 더 여쭤보고싶은데요 현재 B게시판은 A게시판의 상세내용으로 쓰고있습니다.
그래서 현재 A 게시판에
A게시판 내용
-------------------
B 게시판 내용(A게시판의 상세)

이렇게 이루어져있는데

B게시판에서 위에서 질문한것처럼 wr_4값을 평균을내서 a 게시판에 나타내려고하는데
여기서 a게시판의 각 wr_id에 맞게 그 값을 나타내려면 어떻게해야하는지 궁금합니다ㅠㅠ
저렇게 view.skin에 하니 a게시판의 모든 게시글에서 다 나와서 문제입니다ㅠㅠ
where 절을 이용해줘야하나요?
P
Policia
7년 전
당연히 특정 행의 값을 가져오기위해선 where로 그 값만 가져오는 시도가 필요하죠

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

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

로그인