최신글 sql 문법들 질문 드립니다.
본문
그누보드 인덱스 최신글 출력하는 구문인데,
mysql 문법 도움을 받고자
몇가지 질문을 드립니다.
$sql = " select bo_table
from `{$g5['board_table']}` a left join `{$g5['group_table']}` b on (a.gr_id=b.gr_id)
where a.bo_device <> 'mobile' ";
1. where a.bo_device <> 'mobile' "; 의 의미가 무엇인가요?
if(!$is_admin)
$sql .= " and a.bo_use_cert = '' ";
2.
.= 옆의 표시를 잘 모르겠습니다. 점이 붙어서
대입의 의미랑 다를 것 같은데 어떤 의미가 있나요?
$sql .= " order by b.gr_order, a.bo_order ";
3. order by 는 정렬을 시킬 때 쓰는건가요?
답변 3
1. where a.bo_device <> 'mobile' "; 의 의미가 무엇인가요?
a테이블의 bo_device 가 mobile이 아닌것을 가져온다
2. .= 옆의 표시를 잘 모르겠습니다. 점이 붙어서
대입의 의미랑 다를 것 같은데 어떤 의미가 있나요?
.= 은 추가로 대입한다고 보면됩니다
예)
$a='안녕';
$a.='하세요';
echo $a;
결과 : 안녕하세요
3. $sql .= " order by b.gr_order, a.bo_order ";
order by 는 정렬을 시킬 때 쓰는건가요?
네 맞습니다
1. bo_device 값이 mobile 것을 빼고 검색을 자료를 가지고 오라는 겁니다.
2. .= 은 앞에 변수와 이어지는겁니다.
$sql = "1";
$sql .= "2";
하고 echo $sql를 하면 12 가 찍히게 됩니다.
3. 정렬이 맞습니다.
1. !='mobile' 와 같은 의미입니다 모바일값과 같지않은 경우
2. .= 는 앞의 변수에 이어서 사용하는 경우입니다. .점이 붙으면 이어서 사용한다 이런의미입니다.
3. order by 정렬맞습니다