tp 5.1 프레임 워 크 조회 표현 식 용법 상세 설명

7984 단어 tp5.1조회 식
본 고의 실례 는 tp 5.1 프레임 워 크 조회 표현 식 의 용법 을 설명 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
조회 식
쿼 리 표현 식 은 대부분의 SQL 쿼 리 문법 을 지원 하 며ThinkPHP쿼 리 언어의 정수 이기 도 합 니 다.쿼 리 표현 식 의 사용 형식:

where('   ','   ','    ');
whereOr('   ','   ','    ');
5.1새로운 조회 방법 도 지원 합 니 다.

whereField('   ','    ');
whereOrField('   ','    ');
Field필드 의 낙타 봉 이름 을 사용 합 니 다.
표현 식 은 대소 문 자 를 가리 지 않 고 지원 하 는 조회 표현 식 은 다음 과 같은 몇 가지 가 있 습 니 다.
표현 식
속뜻
빠 른 검색 방법
=
...과 같다
 
<>
같 지 않다
 
>
...보다 크다
 
>=
...보다 크다
 
<
...보다 작다
 
<=
이하
 
[NOT] LIKE
모호 조회whereLike/whereNotLike[NOT] BETWEEN
구간 조회whereBetween/whereNotBetween[NOT] IN
(없 음)IN 검색whereIn/whereNotIn[NOT] NULL
검색 필드 가 NULL 인지 여부(아니오)whereNull/whereNotNull[NOT] EXISTS
EXISTS 조회whereExists/whereNotExists[NOT] REGEXP
정규(불)일치 조회(Mysql 만 지원)
 
[NOT] BETWEEM TIME
시간 구간 비교
whereBetweenTime
> TIME
어느 시간 보다 크다whereTime< TIME
어느 시간 보다 작 음whereTime>= TIME
어느 시간 보다 크다whereTime<= TIME
어느 시간 보다 작다whereTimeEXP
표현 식 조회,SQL 문법 지원whereExp표현 식 조회 의 용법 예 는 다음 과 같다.
같다
예 를 들 면:

Db::name('user')->where('id','=',100)->select();
아래 의 조회 와 같은 효과 가 있다.

Db::name('user')->where('id',100)->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `id` = 100
같 지 않다.
예 를 들 면:

Db::name('user')->where('id','<>',100)->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `id` <> 100
보다 크다(>)
예 를 들 면:

Db::name('user')->where('id','>',100)->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `id` > 100
보다 크다
예 를 들 면:

Db::name('user')->where('id','>=',100)->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `id` >= 100
보다 작 음(<)
예 를 들 면:

Db::name('user')->where('id','<',100)->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `id` < 100
이하(<=)
예 를 들 면:

Db::name('user')->where('id','<=',100)->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `id` <= 100
[NOT]LIKE:sql 과 LIKE
예 를 들 면:

Db::name('user')->where('name','like','thinkphp%')->select();
마지막 으로 생 성 된 SQL 문 구 는:

SELECT * FROM `think_user` WHERE `name` LIKE 'thinkphp%'
like조회 지원 배열

Db::name('user')->where('name','like',['%think','php%'],'OR')->select();
실제 생 성 된 SQL 문 구 는 다음 과 같 습 니 다.

SELECT * FROM `think_user` 
WHERE (`name` LIKE '%think' OR `name` LIKE 'php%')
더욱 편리 하 게 하기 위해 서 는 직접whereLike방법 을 사용 해 야 한다.

Db::name('user')->whereLike('name','thinkphp%')->select();
Db::name('user')->whereNotLike('name','thinkphp%')->select();
[NOT]BETWEEN:sql[not]between
검색 조건 은 문자열 이나 배열 을 지원 합 니 다.예 를 들 어:

Db::name('user')->where('id','between','1,8')->select();
아래 와 같은 효과:

Db::name('user')->where('id','between',[1,8])->select();
마지막 으로 생 성 된 SQL 문 구 는 다음 과 같 습 니 다.

SELECT * FROM `think_user` WHERE `id` BETWEEN 1 AND 8
가장 빠 른 조회 방법 은:

Db::name('user')->whereBetween('id','1,8')->select();
Db::name('user')->whereNotBetween('id','1,8')->select();
[NOT]IN:sql[not]in
검색 조건 은 문자열 이나 배열 을 지원 합 니 다.예 를 들 어:

Db::name('user')->where('id','in','1,5,8')->select();
아래 와 같은 효과:

Db::name('user')->where('id','in',[1,5,8])->select();
마지막 SQL 문 구 는 다음 과 같 습 니 다.

SELECT * FROM `think_user` WHERE `id` IN (1,5,8) 
가장 빠 른 조회 방법 은:

Db::name('user')->whereIn('id','1,5,8')->select();
Db::name('user')->whereNotIn('id','1,5,8')->select();
 [NOT] IN조회 지원 폐쇄 방식 사용
[NOT] NULL :
검색 필드 가(아니오)인지 여부Null입 니 다.예 를 들 어:

Db::name('user')->where('name', null)
->where('email','null')
->where('name','not null')
->select();
실제 생 성 된 SQL 문 구 는 다음 과 같 습 니 다.

SELECT * FROM `think_user` 
WHERE `name` IS NULL 
AND `email` IS NULL 
AND `name` IS NOT NULL
문자열null이나not null필드 의 값 을 조회 하려 면 다음 을 사용 해 야 합 니 다.

Db::name('user')->where('title','=', 'null')
->where('name','=', 'not null')
->select();
추천 하 는 방식 은whereNullwhereNotNull방법 으로 조회 하 는 것 이다.

Db::name('user')->whereNull('name')
->whereNull('email')
->whereNotNull('name')
->select();
EXP:표현 식
더 복잡 한 조회 상황 을 지원 합 니 다.예 를 들 어:

Db::name('user')->where('id','in','1,3,8')->select();
변경 가능:

Db::name('user')->where('id','exp',' IN (1,3,8) ')->select();
exp조회 조건 은 문자열 로 간주 되 지 않 기 때문에 뒤의 조회 조건 은 함수 와 필드 이름 을 포함 한 모든 SQL 지원 문법 을 사용 할 수 있 습 니 다.
동적 조회
위의 조회 표현 식 에 대해 동적 조회 방법 을 사용 하여 간소화 할 수 있 습 니 다.예 를 들 어:

Db::name('user')->where('id','>=',100)->select();
다음 으로 간략화 할 수 있 습 니 다.

Db::name('user')->whereId('>=',100)->select();
thinkpHP 와 관련 된 내용 에 관심 이 있 는 독자 들 은 본 사이트 의 주 제 를 볼 수 있 습 니 다.,,,,,ThinkpHP 입문 강좌,thinkpHP 템 플 릿 조작 기법 요약,ThinkPHP 상용 방법 총화,codeigniter 입문 강좌,CI(CodeIgniter)프레임 워 크 진급 강좌Zend FrameWork 프레임 워 크 입문 강좌.
본 고 는 ThinkPHP 프레임 워 크 를 기반 으로 한 PHP 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기