Как организовать поиск по дате в sql?
Нормально - никак.
Нормализуйте базу, выносите эти данные в отдельную связанную таблицу.
$is_available = 1;
$sql_query = "SELECT * FROM table WHERE dates_list LIKE '%2015-11-20|{$is_available}%' OR dates_list LIKE '%2016-01-03|{$is_available}%' OR ..."
Тоесть тебе нужно разбить промежуток времени по дням и искать в каждой записи эти даты по шаблону. Этот запрос достаточно тяжелый. будет медленно работать на больших объемах