Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

오늘 날짜가 두 개의 DATE 열 사이에있는 MySQL 행을 선택 하시겠습니까?

<시간/>

오늘 날짜가 두 날짜 열 사이에 있는 MySQL 행을 선택하려면 AND 연산자를 사용해야 합니다. 구문은 다음과 같습니다.

SELECT *FROM yourTableName WHERE yourDateColumnName1 <='yourDateValue' ANDyourDateColumnName2>=''yourDateValue';

위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.

mysql> create table selectDates -> ( -> Id int NOT NULL AUTO_INCREMENT, -> StartingDate 날짜, -> EndingDate 날짜, -> PRIMARY KEY(Id) -> );쿼리 OK, 영향을 받는 행 0개(0.80초) 

이제 insert 명령을 사용하여 테이블에 일부 레코드를 삽입할 수 있습니다. 쿼리는 다음과 같습니다.

mysql> insert into selectDates(StartingDate,EndingDate) values('2019-01-11','2019-01-23');Query OK, 1행 영향(0.17초)mysql> selectDates(StartingDate, EndingDate) values('2019-01-10','2019-01-23');쿼리 OK, 1행 영향(0.17초)mysql> selectDates(StartingDate,EndingDate) 값에 삽입('2019-01-30' ,'2019-01-30');쿼리 OK, 1행 영향(0.12초)mysql> selectDates(StartingDate,EndingDate) values('2019-10-14','2019-10-28');Query에 삽입 OK, 1행 영향(0.17초)mysql> selectDates(StartingDate,EndingDate) values('2019-10-14','2019-10-20');Query OK, 1행 영향(0.19초)mysql> insert into selectDates(StartingDate,EndingDate) values('2019-11-17','2019-11-19');Query OK, 1개 행 영향(0.52초)mysql> selectDates(StartingDate,EndingDate) values(' 2019-12-21','2019-12-31');쿼리 OK, 1행 영향(0.19초)mysql> selectDates(StartingDate,EndingDate) 값에 삽입('2019-01-06','2019-01 -21'); 쿼리 확인, 1개 행이 영향을 받았습니다(0.16 sec)mysql> insert into selectDates(StartingDate,EndingDate) values('2019-01-07','2019-01-17');쿼리 OK, 1행 영향(0.18초)

select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다.

mysql> select *from selectDates;

다음은 출력입니다.

+----+--------------+------------+| 아이디 | 시작일 | 종료일 |+----+--------------+------------+| 1 | 2019-01-11 | 2019-01-23 || 2 | 2019-01-10 | 2019-01-23 || 3 | 2019-01-30 | 2019-01-30 || 4 | 2019-10-14 | 2019-10-28 || 5 | 2019-10-14 | 2019-10-20 || 6 | 2019-11-17 | 2019-11-19 || 7 | 2019-12-21 | 2019-12-31 || 8 | 2019-01-06 | 2019-01-21 || 9 | 2019-01-07 | 2019-01-17 |+----+--------------+------------+9행 세트(0.00초) 

다음은 두 날짜 열 사이에서 오늘 날짜를 선택하는 쿼리입니다.

select *from selectDates where StartingDate <='2019-01-10' AND EndingDate>='2019-01-10';

다음은 출력입니다.

+----+--------------+------------+| 아이디 | 시작일 | 종료일 |+----+--------------+------------+| 2 | 2019-01-10 | 2019-01-23 || 8 | 2019-01-06 | 2019-01-21 || 9 | 2019-01-07 | 2019-01-17 |+----+--------------+------------+세트에 행 3개(0.00초)