15.07.2010, 20:25 | #1 |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 243
|
SQL, подскажите плиз
нужно сделать выборку, да так, чтоб в одном значении была не переменная, а массив. Делал примерно так:
SELECT f, gf, k, (SELECT sd, g FROM rgervc), kj FROM sdfg; проблема в том, что всё нужно сделать одним запросом. Возможно такое?
__________________
|
15.07.2010, 20:49 | #2 |
Эксперт
|
нет так нельзя
до слова from должны быть константы (это имена полей для вывода) то как сделал ты их количество будет неопределено это делается чуть чуть подругому но надо чтобы таблицы sdfg и rgervc были связаны (что скорее всего так и есть) - вощем тебе надо узнать почему базы данных называются реляционными ).. если кратко).. ps/ если чесно - ты самто хоть понял чего составил - ведь бред ).. эт всё жара наверно ..)
__________________
Последний раз редактировалось Anadonam; 15.07.2010 в 20:51. Причина: Добавлено сообщение |
15.07.2010, 20:56 | #3 |
Эксперт
Регистрация: 12.12.2009
Адрес: Ростов-на-Дону
Сообщений: 1,537
Вес репутации: 242
|
Будет правильнее если ТС расскажет что он делает (задачу), тогда будет понятно как это можно сделать.
"Массив" получить можно (например в виде строки), только это геморно и я не помню как (кажется это называется "функции агрегации", но может и ошибаюсь). Но главное - я даже не могу представить когда такое может понадобиться
__________________
Самый удобный Хостинг (в т.ч. сейчас - бесплатное полугодовое тестирование хостинга Node.JS) |
15.07.2010, 21:14 | #4 |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 243
|
есть около 5-7 таблиц, которые все между собой переплетаются. и вот для одного вывода нужно получать список значений из таблицы
Добавлено через 1 минуту вобщем пытался так: PHP код:
__________________
Последний раз редактировалось Русская мафия; 15.07.2010 в 21:14. Причина: Добавлено сообщение |
15.07.2010, 21:49 | #5 |
Эксперт
Регистрация: 12.12.2009
Адрес: Ростов-на-Дону
Сообщений: 1,537
Вес репутации: 242
|
В общем, если охота поизвращаться, то http://webi.ru/webi_articles/8_14_f.html
А "по нашему" - надо делать отдельными подзапросами. У вас и так запрос "не слабый" Кстати, у меня тоже вопрос. Как проще всего обменять значения в двух строках? idN значение1 idM значение2 надо поменять местами значение1 и значение2 в двух известных строках (для двух известных id).
__________________
Самый удобный Хостинг (в т.ч. сейчас - бесплатное полугодовое тестирование хостинга Node.JS) |
16.07.2010, 03:08 | #6 |
Починяю примуса
Регистрация: 26.09.2008
Сообщений: 1,505
Вес репутации: 285
|
сломался телепатический ментальный дебаггер на "для одного вывода", для одного запроса м.б?
так и в чем проблема? while($res=mysql_fetch_assoc($result)) { $res[..] }
__________________
|
16.07.2010, 13:35 | #7 |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 243
|
угу)
нужно всего один запрос сделать, чтоб получить что то такое: PHP код:
__________________
|
16.07.2010, 13:41 | #8 |
Новичок
Регистрация: 25.05.2010
Сообщений: 34
Вес репутации: 171
|
если принципиально 1 запрос и не важно сколько времени потом разбирать
SELECT f, gf, k, kj FROM sdfg union SELECT XXX as tag1,YYY as tag2, sd, g FROM rgervc ; потом руками разобрать XXX as tag1 - сколько надо добавиь по смыслу фильтровать в ПХП по ним же на MуSQL 3.1-3.2.х, кажется, не будет работать - там в UNION баг |
16.07.2010, 13:43 | #9 | |
Мафиози
Регистрация: 11.09.2008
Адрес: <H1></H1>
Сообщений: 1,174
Вес репутации: 243
|
Цитата:
то что нужно, спасибо) Как и я пытался делать, только с групировкой: PHP код:
__________________
|
|
17.07.2010, 11:55 | #10 | |
Специалист
|
Цитата:
Ну или Union, как уже советовали. В чем, конкретно, проблема? Или вы чего-то по условиям не договариваете аля: без лишней переменной, одним запросом(правда не знаю, зачем это нужно). И зачем это вообще надо, задача какова? |
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подскажите плиз | Daemon | Курилка | 1 | 27.05.2010 18:59 |
Подскажите по железу плиз.. | Йода | Курилка | 4 | 18.03.2010 09:17 |
Подскажите, плиз, как добавлять страницы? | doctor1984 | Вопросы от новичков | 2 | 12.10.2009 01:20 |
Подскажите новичку плиз | domperignon | Вопросы от новичков | 23 | 13.01.2009 12:44 |
Подскажите дурачку плиз:) | lexus66628 | Вопросы от новичков | 9 | 23.09.2008 15:41 |
Часовой пояс GMT +3, время: 11:25.