od_time 역순

od_time 역순

QA

SIR 제작의뢰 - 견적무료/익명보정/호스팅, DB 이전/단기개발. 이젠 ' 의뢰인'이 원하는 '제작자'에게만 연락처를 알릴 수 있습니다.

od_time 역순

본문

<?php
$sql = "select sum(a.od_cart_price) od_cart_price, od_time from {$g5['g5_shop_order_table']} a inner join {$g5['member_table']} b on a.mb_id = b.mb_id where a.od_status != '취소' and a.mb_id = '{$member['mb_id']}' order by od_time asc"; // 주문상태 취소를 제외,
$row = sql_fetch($sql);

echo substr($row['od_time'],2,8);

?>

 

하면 구매일이 가장 오래된게 나오는데요

 

가장 최근 것 하나만 나오게 하려면 어떻게 해야 하나요?

 

order by od_time asc;, order by od_time desc; 차이가 없네요

 

order by od_time desc limit 1"; 해봐도 소용이 없습니다 ㅠㅠ

이 글을 내 페이스북 계정으로 보내기 이 글을 내 트위터 계정으로 보내기 이 글을 내 구글플러스 계정으로 보내기

이 질문에 댓글 쓰기 :

답변 4

채택됨

천율님의 답변

inner join을 쓰셨습니다.

{$g5['g5_shop_order_table']} a

{$g5['member_table']} b

 

두가지 테이블을 조인하셨기때문에 order by 할때 컬럼의 테이블 지정을 하셔야 합니다.

od_time 컬럼이 a에 있으면 order by a.od_time

b에 있으면 order by b.od_time 으로 지정하시면 될것으로 예상됩니다.

주소복사
채택됨
답변의 댓글

천율님의 답변

order by a.od_time desc 해보세요

주소복사
답변의 댓글
블랑숑님의 댓글
order by a.od_time desc
order by a.od_time asc
order by od_time desc
order by od_time asc
order by a.od_time desc limit 1
order by a.od_time asc limit 1
order by od_time desc limit 1
order by od_time asc limit 1

전부 18-08-07 로 나옵니다.

최신 날짜는 18-10-15입니다.

b.od_time은 아예 나오지 않아요 ㅠㅠ

천율님의 답변

$sql = "select sum(a.od_cart_price) od_cart_price, od_time from {$g5['g5_shop_order_table']} a inner join {$g5['member_table']} b on a.mb_id = b.mb_id where a.od_status != '취소' and a.mb_id = '{$member['mb_id']}' order by od_time asc"; // 주문상태 취소를 제외,

 

od_time이 아예 없네요

아래처럼 변경해보세요

 

$sql = "select a.od_time, sum(a.od_cart_price) od_cart_price, od_time from {$g5['g5_shop_order_table']} a inner join {$g5['member_table']} b on a.mb_id = b.mb_id where a.od_status != '취소' and a.mb_id = '{$member['mb_id']}' order by a.od_time asc";

주소복사
답변의 댓글

블랑숑님의 답변

<?php
include_once('./_common.php');
include_once(G5_THEME_PATH.'/head.php');
error_reporting(E_ALL);
ini_set("display_errors", 1);
?>
<?php
$sql = "select a.od_time, sum(a.od_cart_price) od_cart_price, od_time from {$g5['g5_shop_order_table']} a inner join {$g5['member_table']} b on a.mb_id = b.mb_id where a.od_status != '취소' and a.mb_id = '{$member['mb_id']}' order by a.od_time asc limit 1";
$row = sql_fetch($sql);
$atoday = time();
$btoday = strtotime($row['od_time']);
$ctoday = round(($atoday - $btoday) / (60 * 60 * 24));
if($member['mb_level'] < 10) {
    if($ctoday < 365) {
        if($row['od_cart_price'] <= 50000){
            $level_up = 2;
        }elseif($row['od_cart_price'] <= 100000){
            $level_up = 3;
        }elseif($row['od_cart_price'] <= 150000){
            $level_up = 4;
        }elseif($row['od_cart_price'] <= 200000){
            $level_up = 5;
        }elseif($row['od_cart_price'] <= 250000){
            $level_up = 6;
        }elseif($row['od_cart_price'] <= 300000){
            $level_up = 7;
        }elseif($row['od_cart_price'] <= 500000){
            $level_up = 8;
        }elseif($row['od_cart_price'] <= 1000000){
            $level_up = 9;
        }
    } else {
            $level_up = 2;
    }

    sql_query(" update {$g5['member_table']} set mb_level = '$level_up' where mb_id = '$member[mb_id]' ");
}
?>
<?php echo $ctoday; ?><br>
<?php echo substr($row['od_time'],2,8); ?><br>
<?php echo $row['od_cart_price']; ?>

<?php
include_once(G5_THEME_PATH.'/tail.php');
?>

 

이게 전문이거든요?

 

취지가 뭐냐면 누적 금액에 따라 회원 등급을 올리고 최근 구매일로부터 1년 이상 경과한 고객은 레벨 2로 낮춰버리는 그런 프로그램이에요.

 

밑에 echo 는 그냥 테스트로 출력하는거구요

 

도저히 바뀌질 않네요 ㅎㅎ... 우울하네요 ㅠㅠ

주소복사
답변의 댓글
답변을 작성하시기 전에 로그인 해주세요.
전체 67,601 | RSS
고마운 분의 도움으로 질문을 해결하셨다면, 채택을 눌러서 감사의 마음을 전하세요.
어떻게 질문해야 할지 모른다면 질문하는 방법을 읽어 보신후 질문해 보세요.
QA 내용 검색

회원로그인

진행중 포인트경매

  1. 그누위즈의 PHP&MySQL 웹 프로그래밍 입문+활용

    참여4 회 시작18.11.16 13:47 종료18.11.21 13:47
  2. 강정 감귤 5kg 한박스

    참여37 회 시작18.11.13 20:00 종료18.11.18 20:00
  3. 다래사랑) 레드키위 or 골드키위 3Kg 한박스

    참여32 회 시작18.11.13 11:45 종료18.11.18 11:45

(주)에스아이알소프트 (06253) 서울특별시 강남구 도곡로1길 14, 6층 624호 (역삼동, 삼일프라자) 대표메일:admin@sir.kr
사업자등록번호:217-81-36347 대표:홍석명 통신판매업신고번호:2014-서울강남-02098호 개인정보보호책임자:이총

© SIRSOFT