Mysql результаты проблема - PullRequest
0 голосов
/ 22 сентября 2009

Я создаю веб-сайт для своей школы, и мне нужна помощь с результатами Mysql. Мне нужно знать, когда тренажерный зал будет доступен для использования, например: он занят с 2009-09-23 до 2009-09-30 и доступен для всех других дат, теперь я написал запрос, но он не работает.

   SELECT gym_name from gym, logs WHERE gym.gym_id = logs.logs_id 
    AND (gym.date_busy_from < '2009-09-23' 
    OR gym.date_busy_from > '2009-09-23' 
    AND gym.date_busy_till > '2009-09-30')

Может ли кто-нибудь помочь мне, я застрял на несколько часов, и я не могу пробить стену. Тпй

Ответы [ 2 ]

1 голос
/ 22 сентября 2009

Ваш. Что делает условие ИЛИ или что вы пытаетесь с ним сделать?

SELECT gym_name from gym, logs 
WHERE gym.gym_id = logs.logs_id 
AND (gym.date_busy_from < '2009-09-23' 
OR gym.date_busy_from > '2009-09-23'
AND gym.date_busy_till > '2009-09-30')

Попробуйте

SELECT gym_name 
FROM gym, logs
WHERE gym.gym_id = logs.logs_id
AND gym.date_busy_from < CURDATE()
AND gym.date_busy_till > DATE_ADD(CURDATE(), INTERVAL 7 DAY)

Или

SELECT gym_name 
FROM gym, logs
WHERE gym.gym_id = logs.logs_id
AND gym.date_busy_from > CURDATE()
AND gym.date_busy_till < DATE_ADD(CURDATE(), INTERVAL 7 DAY)
0 голосов
/ 22 сентября 2009

сохраняется gym.date_busy_from в формате varchar или в формате даты? Это будет иметь значение для вашего сравнения. Я не вижу твоей круглой скобки закрытой после первого оператора AND.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...