Задать вопрос
@bear1489

Как выбрать данные из таблицы MySql по минимальной дате с дополнительным условием?

Помогите составить SQL запрос новичку. Есть таблица accounts, состоящая из трех полей (login, status, date). Поле статус можете иметь несколько значений, например "active" и "free"

Мне нужно вернуть строку с самой минимальной датой и status которой будет free.

Вот так получается выбрать только по минимальной дате: Select * from `accounts` where date IN (SELECT MIN(`date`) FROM `accounts`)

Вот так я пробовал прописать дополнительное условие: Select * from `accounts` where date IN (SELECT MIN(`date`) FROM `accounts`) AND `status`= 'free'

Пошел учить SQL, буду очень благодарен за помощь добрым людям )
  • Вопрос задан
  • 1108 просмотров
Подписаться 1 Простой 3 комментария
Помогут разобраться в теме Все курсы
  • Progtips
    Программирование на PHP и MySQL
    2 месяца
    Далее
  • beONmax
    Профессия Веб программист - Быстрый старт
    4 месяца
    Далее
  • teamcoding
    TC200PY Разработка PHP веб-приложений на Yii2. Шаблон приложения advanced
    3 месяца
    Далее
Решения вопроса 1
@q2digger
никого не трогаю, починяю примус
Так, ну я не настоящий DBA, но мне видится у вас такая ошибка:
вы проверяете поле даты, а оно может быть такое: 2016-09-26 14:31:31

я бы делал так
select * from accounts where date(date) IN (select date(min(date)) from accounts) and status = 'free';
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы