sql 날짜 지정해서 검색하는 질문드립니다.
본문
sql을 공부중인 초보자 입니다
<?php
$prevdate = "2020-12-01";
$nextdate = "2020-12-13";
$sql = " select sum(mb_point) as sum_point from g5_member where mb_1 = '서울대학교' and date('{$prevdate}') <= date(po_rel_action) >= date('{$nextdate}') ";
$row = sql_fetch($sql);
$sum = $row['sum_point'];
echo $sum." 포인트";
?>
회원중 여분필드가 서울대학교인 사람들의 포인트 적립일시를 기준으로
기간을 정해서 포인트 총합을 구하려고 저렇게 짰는데 아무것도 나오지않아서 질문드립니다.
답변 4
<?php
$prevdate = "2020-12-01";
$nextdate = "2020-12-13";
$sql = "
select sum(po_point) as sum_point
from g5_point
where po_datetime between '{$prevdate}' and '{$nextdate}'
and mb_id in (select mb_id from g5_member where mb_1 = '서울대학교')
";
$row = sql_fetch($sql);
$sum = $row['sum_point'];
echo $sum." 포인트";
?>
`mb_1` = '서울대학교' AND `po_rel_action` >= '".$prevdate."' AND `po_rel_action` <= '".$nextdate."'
날짜 비교만 하실 거면 이런 식으로 하셔야 하지 않을까 싶네요.
$sql = " select sum(mb_point) as sum_point from g5_member where mb_1 = '서울대학교' and po_rel_action between '".$prevdate."' and '".$nextdate."'";
https://www.google.co.kr/search?ei=Mj_YX5DaMcelmAWekZ74BA&q=mysql+between+%EB%82%A0%EC%A7%9C&oq=mysql+between+%EB%82%A0%EC%A7%9C&gs_lcp=CgZwc3ktYWIQAzICCAAyAggAMgIIADoHCAAQsQMQQzoECAAQQ1C6DVjLGGCDGmgAcAB4AIABwwGIAYcIkgEDMC43mAEAoAEBqgEHZ3dzLXdpesABAQ&sclient=psy-ab&ved=0ahUKEwiQu9TSls_tAhXHEqYKHZ6IB08Q4dUDCA0&uact=5
이걸로 검색하셔서 좀더 자세한건 보시면 될거 같습니다.
해당 테이블 화면을 캡쳐해주셔야 정확한건 알수 있을거 같네요
구문이 이상이 없다면 데이터에 실제 비교하는 데이터가 없어서 발생하는거 같네요.