쿼리문좀 봐주십쇼

· 2013-04-03 (수) 15:39:29 · 1179 · 6
$sql_sub =
"select if(datediff(now(),reg_dm ) <= '7','Y','N') as is_new from goods WHERE left(rep_cat_cd,6) ='$d_cat_cd' order by reg_dm desc LIMIT 0 , 1 ";



'Y','N' -> 브랜드 새상품등록되면 뉴라고뜨는부분입니다

rep_dm -> 등록일시

$d_cat_cd -> 카테고리번호

rep_cat_cd ->카테고리위치

date_diff ->날짜함수?

now() -> 이건뭘까요 지금 시간을 말하는건가요?

지금 저 부분쿼리때문에 홈페이지가 많이 느린거같은데...

정확한 해석좀 해주실분 계신가요 ㅠ.ㅠ
|

댓글 6개

rep_cat_cd 필드에 인덱스가 걸려있는지 체크해보시고, reg_dm에도 인덱스 여부 체크... 가급적 pk나 index가 걸린 필드로 검색하시거나 정렬하시는걸로 변경하시면 될겁니다.
select if(count(*),'Y','N') is_new from goods
where datediff(now(),reg_dm ) <= 7 and left(rep_cat_cd,6) ='$d_cat_cd'
ㅠ.ㅠ 속도가똑같네영 힝...
이게 이부분 전체 소스 입니다..........


function GetChildCategory( $d_cat_cd, $is_utf = false )
{
$child_category = array();

$sql = "
select
a.d_cat_nm, a.d_cat_cd
, (
select count(*)
from category_goods b
inner join goods c on b.goods_no = c.goods_no and b.goods_sub = c.goods_sub
where b.cat_type = '$this->cat_type' and b.d_cat_cd = a.d_cat_cd
and c.sale_stat_cl in ('30', '40')
) as goods_cnt
from category a
where a.cat_type = '$this->cat_type'
and a.p_d_cat_cd = '$d_cat_cd'
and a.use_yn = 'Y'
group by a.d_cat_cd
order by a.seq, a.d_cat_cd
";
$rs = $this->db->Execute($sql);
while ( ! $rs->EOF )
{
$d_cat_nm = htmlspecialchars($rs->fields["d_cat_nm"]);
$d_cat_cd = $rs->fields["d_cat_cd"];
$goods_cnt = $rs->fields["goods_cnt"];

$sql_sub = "select if(datediff(now(),reg_dm ) <= '7','Y','N') as is_new from goods WHERE left(rep_cat_cd,6) ='$d_cat_cd' order by reg_dm desc LIMIT 0 , 1 ";
$rs_subt = $this->db->Execute($sql_sub);
$is_new = $rs_subt->fields["is_new"];



$child_category[] = array(
"d_cat_nm" => ( $is_utf ) ? iconv("EUC-KR", "UTF-8", $d_cat_nm) : $d_cat_nm
, "d_cat_cd" => $d_cat_cd
, "goods_cnt" => $goods_cnt
, "is_new" => $is_new
);
$rs->MoveNext();
}
$rs->Close();

return $child_category;
}
$sql_sub = "select ~~~다움즐에 echo $sql_sub; 해서 몇번이나 실행되는지 보는 것이 먼저일 듯..
동일한 쿼리를 몇번이나 생기는지 등을 보고 쿼리 횟수를 줄이는 방법을 찾아할 것 같아보입니다
현재 노출대는 브랜드갯수만큼 쿼리가 발생하는거 같습니다..
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
13-04-04 조회 875
13-04-04 조회 1,684
13-04-03 조회 2,149
13-04-03 조회 1,626
13-04-03 조회 1,372
13-04-03 조회 941
13-04-03 조회 723
13-04-03 조회 1,644
13-04-03 조회 948
13-04-03 조회 1,621
13-04-03 조회 1,818
13-04-03 조회 2,031
13-04-03 조회 767
13-04-03 조회 851
13-04-03 조회 1,180
13-04-03 조회 1,680
13-04-03 조회 939
13-04-03 조회 1,705
13-04-03 조회 1,308
13-04-03 조회 1,147