выбор по категориям

Статус
В этой теме нельзя размещать новые ответы.

Ярослав

Новичок
выбор по категориям

Здравствуйте
Надеюсь что веткой не ошибся, т.к. хочу уяснить скорее теоретически хотя наочним примерам всегда рад.
есть таблица
articles
----------
id
category
text
date

и категории mobile, photo, music

мне нужно на одной странице сделать вывод по одной самой "свежей" категории
идея есть делать по каждой категории запрос и лимит
select * from `articles` where `category`="mobile" order by date `DESC` limit 1
select * from `articles` where `category`="music" order by date `DESC` limit 1
.....

Можна как нибудь упростить? как?

ps. запросы чисто формальные для примера
p.p.s поиском пользовался не нашол
 

iSlayter

Новичок
посмотрите в англо-русском словаре значения слов Ascending и Descending (ASC и DESC сокращения). // ваш запрос взял бы самую старую запись :)
category = mobile вы тут что сравниваете? про кавычки посмотрите в мануале.
упростить можно - напишите свой класс для работы с бд :)
 

Ярослав

Новичок
уже подредактировал
но думаю кавычки там роли большой не играли
про ASC да был неправ
про клас - спасибо уже есть
здесь просто наглядный пример
интересует собственно можно как нибудь засунуть все категории в 1 запрос или лучше этого не делать?

-~{}~ 04.08.07 11:52:

Нужно реализовать функциональность как на этом форуме "посмотреть новые сообщения"
 

iSlayter

Новичок
SELECT * FROM `articles` WHERE `category`="mobile" OR `category`="music" ORDER by `date` DESC LIMIT 1


фигассе. кавычки роли не играют. вы бы попробовали запрос такой выполнить :)

наглядный пример?
$db->select_where('table_name', $fieilds_array, $values_array);
у меня так. идея понятна? :)
 

HraKK

Мудак
Команда форума
Это уже не класс работы, а ORM.
Если уж мерятся письками у тебя не подойдет а у меня так.

$orm->setField('category'=>array('mobile','music'));
$orm->setOrder('date');
$orm->setSort('ASC');
$orm->setLimit(1);
$orm->select();
 
HraKK
...
$finder ->setCategory('mobile', 'music')
->setOrder('date')
->setAscending()
->setLimit(1);
$records = $do->fetch($finder);

^^/
 

iSlayter

Новичок
Hrakk, диагноз "многабукафф". тогда уж проще запрос написать получается :)

у меня да, у меня косячок есть, надо переделать на ассоциативный массив, где ключ будет именем поля. Ну и тогда ещё проще будет.

ps. mishco, тоже "букафф".
 

HraKK

Мудак
Команда форума
mishco
=)

iSlayter
Не проще.
да? А где у тебя лимит и сортировка по полю? В общем не спорь.


Ярослав
Не занимайся ерундой, то время что ты потратил на создание этой темы ты мог бы потратить на написание кода. толку было бы больше.

Столкнешся с проблемой приходи. Аривидерчи.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху