Запрос из БД с неистёкшим сроком

Тема в разделе "Базы данных", создана пользователем monah, 21 июл 2015.

Модераторы: latteo
  1. monah

    monah

    Регистр.:
    21 мар 2009
    Сообщения:
    167
    Симпатии:
    46
    Всем привет.
    Через это
    PHP:
    <a href="http://ццццюцццц/user/items?itemType=active">Активные (<?php $conn1 getConnection();
        
    $result1 $conn1->osc_dbFetchResult("SELECT COUNT(*) as count FROM %st_item i WHERE i.fk_i_user_id = '%d'
         AND i.b_active = 1 AND i.b_enabled = 1"
    DB_TABLE_PREFIXosc_logged_user_id());
        echo 
    $result1['count'];?>) </a>
    выводятся все активные объявления
    Но здесь выводятся все объявления, в том числе и те которые истекли.
    Надо сделать так чтобы, те объявления которые истекли не брало из базы.
    В базе столбец который отвечает за дату dt_expiration, формат даты 2015-05-11 10:33:03, т.е. надо сравнить дату которая сейчас и в столбце dt_expiration.
    Помогите плиз)
    вроде доступно объяснил

    а по подробнее, я не силен в sql, если можно)
     
    Последнее редактирование модератором: 25 июл 2015
    ZiX нравится это.
  2. ZiX

    ZiX Коддинг, Парсинг

    Moderator
    Регистр.:
    9 июл 2011
    Сообщения:
    1.387
    Симпатии:
    575
    Использую Between

    Вы такой интересный)
    Пишите в яндекс MySQL between мануалов и примеров полно!
     
    Последнее редактирование модератором: 25 июл 2015
    monah нравится это.
  3. Black Hat

    Black Hat Постоялец

    Регистр.:
    15 май 2015
    Сообщения:
    114
    Симпатии:
    76
    В конец условия вбахать
    AND i.dt_expiration > NOW()
     
    latteo и monah нравится это.
  4. oo.bykov

    oo.bykov Писатель

    Регистр.:
    22 июл 2015
    Сообщения:
    2
    Симпатии:
    0
    Тоже через Between делаю все норм
     
  5. bibika

    bibika Создатель

    Регистр.:
    30 янв 2016
    Сообщения:
    8
    Симпатии:
    1
    SELECT COUNT(*) as count FROM %st_item i WHERE i.fk_i_user_id = '%d' AND i.b_active = 1 AND i.b_enabled = 1 AND dt_expiration > NOW()

    только вот это запрос на подсчет кол-ва объявлений, а не вывод объявлений.
    соответственно вывод меняется в другом месте у другого запроса.
     
  6. yaroslav08707

    yaroslav08707 Создатель

    Регистр.:
    11 май 2015
    Сообщения:
    9
    Симпатии:
    0
    SELECT COUNT(*) as count FROM %st_item i WHERE i.fk_i_user_id = '%d' AND i.b_active = 1 AND i.b_enabled = 1 AND dt_expiration > SYSDATE()

    Кол-во или выборка должна быть?