- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть 2 таблицы приблизительно с такой структурой
news
id date_in ...... - вобщем здесь индексная информация Например:
1 2009-03-18 ...
content - описывается сам контент в базе
content_id lng type_rec parent_id content
1 ru news_title 1 "Заголовок новсти"
2 ru news_text 1 "Текст новости"
и таких записей много (кейворды, дескирипшионы и т.д.)
Можно ли как-то выбрать информацию из этих 2 таблиц одним запросом?
Вот сейчас нужно так приблизительно:
sql="select content from content where type_rex='news_title' and parent_id='1'"; - заголовок
sql="select content from content where type_rex='news_text' and parent_id='1'"; - текст
и таких запросов у меня получается около 10
Можно ли как-то сделать это все одним запросом?
Может быть вот так:
Одним запросом получишь 10 строк :)
kil добавил 18.03.2009 в 12:07
Только я не понял по поводу второй таблицы.
Так наверное не получится т.к. parent_id может быть одинаковым у разных полей (В эту таблицу сбрасывается контент со всего сайта)
Например
parent_id 1, type_rex='news_title' - заголовок новости
parent_id 1 type_rex='title_kategory' - название рубрики каталога
Запись идентифицируется еще по полю type_rex
Так наверное не получится т.к. parent_id может быть одинаковым у разных полей (В эту таблицу сбрасывается контент со всего сайта)
Например
parent_id 1, type_rex='news_title' - заголовок новости
parent_id 1 type_rex='title_kategory' - название рубрики каталога
Запись идентифицируется еще по полю type_rex
Я так понял, что тебе надо выбрать записи для одного и того же parent_id на с разными type_rex?
Я так понял, что тебе надо выбрать записи для одного и того же parent_id на с разными type_rex?
ДА. Чтобі не писать 10 запросов а попробовать одним..
В случае если сделать type_rex - ENUM (для оптимизации, конечн, запрос можно и просто так делать)
SELECT content FROM content WHERE type_rex IN ('news_title','news_text') AND parent_id=1
ДА. Чтобі не писать 10 запросов а попробовать одним..
Тогда в чем проблема?
То, что я предложил, подходит имхо :)
А как тогда принимать данные. Вот в обычном варианте я делаю так:
Тоесть по именам полей.
А как в
SELECT content FROM content WHERE type_rex IN ('news_title','news_text') AND parent_id=1
принимать данные. Чтобы знать что например я в цикле на текущей итерации получаю type_rex=news_title, а на следующей type_rex='news_text'
Если я правильно понял структуру таблицы и как хранятся данные то так:
if($row[type_rex] == 'news_title') $title = $row[content];
elseif($row[type_rex] == 'news_text') $title = $row[content];
.
.
.
Чтобы знать что например я в цикле на текущей итерации получаю type_rex=news_title, а на следующей type_rex='news_text'
не совсем понятно, но
SELECT content, type_rex FROM content WHERE type_rex IN ('news_title','news_text') AND parent_id=1
?
не совсем понятно, но
SELECT content, type_rex FROM content WHERE type_rex IN ('news_title','news_text') AND parent_id=1
?
да, Юименно так