Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Топ: Небольшие вопросы по MySQL
Сообщения
Aki

Подскажите, интересует, является ли оптимизацией следующая ситуация: допустим есть 2 таблицы, 1 - с товарами магазина, 2 - с купленными пользователями товарами. В 1 содержится вся инфа о товаре, а во 2 при покупке записывается только айди пользователя и айди товара, далее к примеру, есть страница с моими покупками, соответственно чтобы вывести их, будет сначала делаться селект во вторую таблицу, а потом в цикле опять же селект, но уже в первую по айди из 2. Вот.. Просто прочитал, что это один из способов оптимизации, так ли это?

08 Окт 2011, 17:31
Kovalsky

Aki, select в цикле? это антиоптимизация...
запросов в циклах нужно избегать.

08 Окт 2011, 17:33
aBSuRD

#3316, в этом случае лучше LEFT JOIN использовать.. Ну или же если используеш PDO, то почитай про prepare()

08 Окт 2011, 18:16
DarveL

Aki, тут в один запрос можно все сделать

08 Окт 2011, 18:23
IceJOKER

есть поле типа ENUM(1,2) , может ли такой тип принять что либо помимо 1 или 2?


Как отследить определенный запрос?
Уже неделю как мучаюсь, никак не пойму, как поле ENUM(1,2) удаляется (т.е., присваивается пустое значение), а остальные поля работают нормально. где хоть не искал в скрипте, нигде не нашел баг(т.е. запрос к БД)

14 Окт 2011, 17:50
Kovalsky

IceJOKER, теоретически думаю не может...
на практике у меня почему то принимает пустое значение (если передается недопустимый параметр)

я обычно использую этот эффект для разного рода переключателей у которых 2 значения.
например так:
enum ('0','1')
(зачение 1 типа включено)

и потом при нажатии кнопки делаю запрос в таблицу:

блабла SET `enum`=`enum`+1
то есть не нужно проверять какое значение было до того как нажали кнопку, тупо обновляем и оно станет другим
если был 0 (или пусто) то станет 1
если был 1 то станет пустым (что странно, но в принципе не мешает)

14 Окт 2011, 17:58
IceJOKER

Kovalsky, никак не могу понять, где у меня ошибка....
пустое значение мне не подходит..

У меня он для обозначения ПОЛ-а пользователя.....на какой то странице идет ошибочный запрос и пол меняется на пустой((( никак не могу найти откуда идет запрос, уже почти все страницы попробовал

14 Окт 2011, 18:07
TOOZ


Не получается...
Есть таблица 'tbl',например,есть колонка 'time' и колонка 'ip' нужно обновить значения этих колнок для юзера,например с id=3.
Как?

14 Окт 2011, 21:39
Slan1

TOOZ, mysql_query("insert into `tbl` WHERE `id`='$id' SET
            `ip`=' $ip',
            `date`='$date';");

14 Окт 2011, 23:47
nitron

Slan1, update `tbl` set `ip` = '$new_ip', `time` = '$new_time' where `id` = 3

14 Окт 2011, 23:51
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.