<blockquote>не больше двух раз в неделю</blockquote> <br/> Формулировка требует некоторых уточнений. <br/> Если лимит определен на календарную неделю, и счет обращений сбрасывается в понедельник, то нужен такой запрос проверки: <br/> <pre><code class="sql">select count(*) -- кол-во записей на этой неделе
from record as r
where r.user_id = ? -- пользователь
-- дата понедельника от r.add_date = дата понедельника от текущей даты
and subdate(r.add_date, interval weekday(r.add_date) day) = subdate(curdate(), interval weekday(curdate()) day)
-- условие для ускорения поиска по индексу на поле add_date
and r.add_date > subdate(r.add_date, interval 7 day)</code></pre> <br/> Если лимит определен просто на интервал 7 дней, то такой запрос: <br/> <pre><code class="sql">select count(*) -- кол-во записей за последние 7 дней
from record as r
where r.user_id = ? -- пользователь
and r.add_date > subdate(r.add_date, interval 7 day)</code></pre>