Понедельников НЕТ!
Регистрация или вход Регистрация или вход Избранное на этом сайте | Главная | Анкета | Рекомендовать | Обратная связь | В избранное | Сделать домашней
Скачать SSDForums
Скачать SSDForums 1.0.1 Скачать SSDForums 1.0.1
Скачать SSDForums 1.0.1 SP1 Скачать SSDForums 1.0.1 SP1
Скачать SSDForums 1.0.1 SP2 Скачать SSDForums 1.0.1 SP2
SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro SSD Forums 1.0.1 SP3 only Slaed 3.5 Pro
SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro SSD Forums 1.0.1 SP4-beta only Slaed 4.1 Pro
Jewelry Сase Team
Скачать Ruby Chat 0.1.1 Скачать Ruby Chat 0.1.1
Меню
Главная
Форум
Магазин цифровых товаров

Новости
Подписка на новости
Темы новостей
Добавить новость

Каталог файлов
Карта файлового архива
Публикации

Опросы
Анкета пользователя
Чат

BestMaker
Викторина
Архив новостей
Карманный оракул
Поиск по сайту с помощью Яндекс
Поиск по сайту с помощью Google
Фото дня
Для души
Погода на 3 дня
IndexCat
IndexTop
Map_Pages
Форум -> PHP, JS, MySQL -> Помогите сделать правильно запрос
Помогите сделать правильно запрос
dnk84 Дата: 05.03.2008, в 22:49 | Сообщение №1
dnk84
Новичок
Пользователь №: 297
Сообщений: 13

Есть 2 времени, время начала и время окончания. Мне нужно выбрать данные из базы в том случае если текущее время находится между 2 , тоесть если время текущее пренадлежит отрезку времени указанному во времени начала и конца.

я делаю так, но кажется неправильно (

Код
1
$result = $db->sql_query("SELECT id, title, hometext, UNIX_TIMESTAMP(date1) as formatted1, UNIX_TIMESTAMP(date2) as formatted2, filename, dj FROM ".$prefix."_radio WHERE (UNIX_TIMESTAMP(date2))>='".time()."' AND (UNIX_TIMESTAMP(date1))<='".time()."' BETWEEN (UNIX_TIMESTAMP(date1)) AND (UNIX_TIMESTAMP(date2)) ORDER BY formatted2 DESC LIMIT 6");


$date1= date("H:i", $formatted1);
$date2= date("H:i", $formatted2);
Insecticide Дата: 11.03.2008, в 00:35 | Сообщение №2
Insecticide
Активный участник
Пользователь №: 182
Сообщений: 130

PHP - Код
1
2
3
<?php
$result
= $db->sql_query("SELECT id, title, hometext, UNIX_TIMESTAMP(date1) as formatted1, UNIX_TIMESTAMP(date2) as formatted2, filename, dj FROM ".$prefix."_radio WHERE UNIX_TIMESTAMP(now()) BETWEEN (UNIX_TIMESTAMP(date1)) AND (UNIX_TIMESTAMP(date2)) ORDER BY formatted2 DESC LIMIT 6");
?>


попробуйте так...
dnk84 Дата: 11.03.2008, в 14:46 | Сообщение №3
dnk84
Новичок
Пользователь №: 297
Сообщений: 13

нет, привязка к дате так и есть.. нет четкой привязки только ко времени.. тип полей data1 и data2 стоит в базе - datatime 00-00-00 00:00:00.. Нужна выборка независимо отдаты - только по времени..
странно...
Insecticide Дата: 11.03.2008, в 15:35 | Сообщение №4
Insecticide
Активный участник
Пользователь №: 182
Сообщений: 130

UNIX_TIMESTAMP формируется с точностью до секунды

то есть если надо выбрать записи на некую определенную дату в неком промежутке времени, то мой запрос верен.

если же нужно независимо от даты, то тогда стоит использовать тип поля time...

в общем мне не очень понятна суть проблемы.
dnk84 Дата: 11.03.2008, в 19:53 | Сообщение №5
dnk84
Новичок
Пользователь №: 297
Сообщений: 13

Все сделал сам, вопрос снят, спасибо

Вы не можете ответить в тему анонимно, пожалуйста, войдите или зарегистрируйтесь!


Главная | Форум | Новости | Подписка на новости | Темы новостей | Добавить новость | Каталог файлов | Карта файлового архива | Публикации | Опросы | Анкета пользователя | Чат | BestMaker | Викторина | Архив новостей | Карманный оракул | Поиск по сайту с помощью Яндекс | Поиск по сайту с помощью Google | Фото дня | Для души | Погода на 3 дня | IndexCat | IndexTop | Map_Pages | Весь Оракул


Генерация страницы: 0.054 сек. и 16 запросов к базе данных за 0.026 сек.
Web site engine code is Copyright © 2006 by SLAED CMS. All rights reserved.