|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
05.05.2015, 08:31 | #1 |
Новичок
Джуниор
Регистрация: 05.05.2015
Сообщений: 8
|
Помощь в запросе
Доброго времени суток! Вот уже несколько дней сижу и не могу составить один единственный запрос. Прошу у вас помощи.
Есть таблица: использование (ид, ид_агронома, ид_поля, ид_удобрения, количество) use(id, agronomist_id, field_id, fertilizer_id, count). Собственно таблица показывает какой агроном какое поле каким удобрением и в каком количестве орошал. А задание такое: выведите поля, которые удобрены всеми удобрениями. |
05.05.2015, 08:57 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Одно и то же поле могут удобрять дважды или это запрещено?
I'm learning to live...
|
05.05.2015, 09:05 | #3 |
Новичок
Джуниор
Регистрация: 05.05.2015
Сообщений: 8
|
Да, могут.
|
05.05.2015, 09:19 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Так попробуй
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
05.05.2015, 09:35 | #5 |
Новичок
Джуниор
Регистрация: 05.05.2015
Сообщений: 8
|
SQLSTATE[21000]: Cardinality violation: 7 ОШИБКА: подзапрос в выражении вернул больше одной строки (SQL: SELECT V.field_id FROM ( SELECT U.field_id,COUNT(*) AS CountFertilizer FROM ( SELECT field_id,fertilizer_id FROM use GROUP BY field_id,fertilizer_id) U GROUP BY U.field_id) V WHERE V.CountFertilizer=(SELECT COUNT(*) FROM use GROUP BY fertilizer_id))
=( |
05.05.2015, 09:39 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Ага, там тоже двухэтажный в условии нужно
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
05.05.2015, 09:42 | #7 |
Новичок
Джуниор
Регистрация: 05.05.2015
Сообщений: 8
|
SQLSTATE[42601]: Syntax error: 7 ОШИБКА: подзапрос во FROM должен иметь псевдоним LINE 6: WHERE V.CountFertilizer=(SELECT COUNT(*) FROM (SELECT fe... ^ HINT: Например, FROM (SELECT ...) [AS] foo. (SQL: SELECT V.field_id FROM ( SELECT U.field_id,COUNT(*) AS CountFertilizer FROM ( SELECT field_id,fertilizer_id FROM use GROUP BY field_id,fertilizer_id) U GROUP BY U.field_id) V WHERE V.CountFertilizer=(SELECT COUNT(*) FROM (SELECT fertilizer_id FROM use GROUP BY fertilizer_id)))
=(( |
05.05.2015, 09:44 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Есть же T, чуть позже подправил
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
05.05.2015, 09:50 | #9 |
Новичок
Джуниор
Регистрация: 05.05.2015
Сообщений: 8
|
Прошло без ошибок не к сожалению не выводит результата. возвращает 0 строк.
|
05.05.2015, 09:56 | #10 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ошибка в запросе | Ardarik | БД в Delphi | 7 | 04.03.2013 15:05 |
if в запросе sql | serres | PHP | 2 | 28.05.2010 12:32 |
Очень нужна помощь с написанием программы... срочно(буду благодарен за помощь) | 5Paladin5 | Помощь студентам | 3 | 02.07.2009 09:12 |
Like в запросе | АлёнаP | Microsoft Office Access | 14 | 13.04.2009 21:35 |
MySQL-нужна помощь в запросе | Stema | SQL, базы данных | 9 | 18.10.2008 19:51 |