Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сложный запрос к MySQL.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Confuciy
Отправлено: 01 Апреля, 2007 - 10:24:33
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2007  


Помог: 0 раз(а)




Дана таблица:

id_goods id_charact meaning
1 2345 100
1 3567 155
2 3900 18
2 4512 нет
3 2345 100
3 3567 155
4 3900 нет
4 2345 100
5 2345 100
5 3567 155
5 3900 18

Нужно сгруппировать id_charact и meaning только для тех id_goods, где и id_charact и meaning одинаковы.

Т.е., чтобы получилось на выходе

id_charact meaning
2345 100
3567 155

Одинаковы для 1 и 3 id_goods

Если кто знает, не поленитесь, напишите. Или хотя бы наведите на мысль.
 
 Top
-SCHATTEN-
Отправлено: 01 Апреля, 2007 - 11:29:49
Post Id



Пользователь


Покинул форум
Сообщений всего: 615
Дата рег-ции: Июль 2006  
Откуда: Оттуда !


Помог: 0 раз(а)




Тебе сперва надо вытаскивать все из бд а потом уже отсеивать при помощи РНР.
Я бы так сделал, так как толком незнаю SQL
 
 Top
evgenijj
Отправлено: 01 Апреля, 2007 - 11:44:23
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




SELECT id_charact, meaning FROM `test`
GROUP BY id_charact, meaning
HAVING COUNT(*)>1

Результат

id_charact meaning
2345 100
3567 155
3900 18
 
 Top
Confuciy
Отправлено: 01 Апреля, 2007 - 11:46:58
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2007  


Помог: 0 раз(а)




evgenijj пишет:
SELECT id_charact, meaning FROM `test`
GROUP BY id_charact, meaning
HAVING COUNT(*)>1

Результат

id_charact meaning
2345 100
3567 155
3900 18


evgenijj, спасибо, я пока до такого же дошел, только вот в 3900 18 в id_goods 1 и 3 нет, так что группировать его не надо.
 
 Top
evgenijj
Отправлено: 01 Апреля, 2007 - 12:01:02
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Сам-то понял, что сказал? Вот записи из твоей таблицы, где совпадают значения id_charact, meaning:

1 2345 100
3 2345 100
4 2345 100
5 2345 100

1 3567 155
3 3567 155
5 3567 155

2 3900 18
5 3900 18

Именно их и надо было вывести? Чтобы было понятней
SELECT id_charact, meaning, COUNT( * )
FROM `test`
GROUP BY id_charact, meaning
HAVING COUNT(*)>1

id_charact meaning COUNT(*)
2345 100 4
3567 155 3
3900 18 2


 
 Top
Confuciy
Отправлено: 01 Апреля, 2007 - 12:31:11
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2007  


Помог: 0 раз(а)




Бред что-то совсем пишу...Недовольство, огорчение

Надо вывести значения id_goods только те, у которых в id_charact и meaning идет полное соответствие, т.е. как у id_goods 1 и 3

evgenijj, спасибо большое за помощь.
 
 Top
evgenijj
Отправлено: 01 Апреля, 2007 - 16:31:45
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Confuciy пишет:

Надо вывести значения id_goods только те, у которых в id_charact и meaning идет полное соответствие, т.е. как у id_goods 1 и 3

Тогда не знаю.
 
 Top
Confuciy
Отправлено: 01 Апреля, 2007 - 17:01:42
Post Id


Новичок


Покинул форум
Сообщений всего: 6
Дата рег-ции: Апр. 2007  


Помог: 0 раз(а)




evgenijj, а какие-нибудь мысли есть, как делать...?
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB