Mysql
 sql >> база данни >  >> RDS >> Mysql

Изберете стойности между начална и крайна дата

Прочетох този проблем като търсене на припокриване на диапазони:

така че имате данни в диапазон:T1 до T3. И търси припокриване с диапазон от Т2 до Т4. Тъй като те се припокриват, искате. Въпреки това, ако данните са от T1 до T3 и диапазонът е от T4 до T5 .. няма припокриване, така че не искам.

Можете да направите това с тази заявка:

Select id 
  from eventos_sapo 
 where startDate <= '2015-02-14'
   AND endDate >= '2013-01-03';

Така че, ако е започнало след дадена дата (14 февруари 2015 г.), не го включвайте. или ако е приключило преди 3 януари 2013 г. ... не го включвайте. Включете всичко останало, тъй като се припокрива:

Като 1 пример:Данните приключват след дадената начална дата на диапазона, а началната дата на данните е преди края, така че това е един от следните случаи:

Data:           |---|
Given range:      |---|

Data:           |-------|
Given range:      |---|

Data:             |---|
Given range:    |---|

Data:             |---|
Given range:    |-------|


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ред на пълнотекстово търсене в MYSQL по уместност

  2. Външен ключ на Django в друга схема

  3. как да получите json данни от заявка за публикация на iphone

  4. Пълен текст на съвпадението на MySQL

  5. MySQL геопространственото търсене с помощта на формула hasrsine връща null в същата точка