mysql избегване на повторни заявки

lorda_

Registered
Здравейте, малко ми е зор с една заявка. Т.е 2!

в една заявка вземам всички потребители => въртя ги в цикъла и вътре в самия цикъл трябва да направя още 1 заявка за да вема данни от друга таблица за конкретния потребител и отново цикъл.

Т.е цикъл в цикъла и не виждам как да избегна повторните заявки към mysql понеже надхвърлят и 30, което е убийство!!

Може ли да ми дадете някое практично решение за избегване на проблема. :oops:
 
[sql]mysql_query("SELECT users.name,other.info FROM `users` JOIN `other` ON (users.id=other.userID) ORDER by users.id DESC");[/sql]
?
 
Как ще завъртя в цикъл данни от JОIN-a? искам цикъл в цикъла с една заявка..

четох нещо за индексиране на заявката преди самия цикъл и после само вземанто, но все пак не ми е много ясно.. :(
 
Обясни какво точно искаш да направиш. Т`ва да правиш заявки от цикъл е много тъпо.
 
Искам да взема потребителите и снимките на даден потребител.

Първо вземам потребителя, после от потребителя вземам ID и с него id вземам снимките, които ги показваме и тях. ( може да са 5-6-20 снимки )


Да се получи нещо такова.

Потребител 1
Снимка, снимка, снимка, снимка

Потребител 2
снимка, снимка

потребител 3
снимка, снимка, снимка

:idea: :idea:
 
Имаме 2 таблици (примерни), ще изкараме информацията за потребител + снимки. По реда - последни регистрирани потребители.

- pic (таблица 1, примерна - Поле: id).
- user (таблица 2, примерна - Поле: user_id).


Вариянт 1
PHP:
SELECT * FROM `user`,`pic` WHERE `user`.`id`=`pic`.`user_id` ORDER BY `user`.`id`


Вариянт 2
PHP:
SELECT * FROM `user` INNER JOIN `pic` ON `user`.`id`=`pic`.`user_id` ORDER BY `user`.`id`
 
добре супер, но айде как ще звъртя да извадя 10-те снимки на потребителя?
 
Сега примерно в таблицата: pic, добавяме едно поле " url ".


PHP:
$row=mysql_query("SELECT * FROM `user`,`pic` WHERE `user`.`id`=`pic`.`user_id` ORDER BY `user`.`id`");

while($snimki=mysql_fetch_assoc($row))
{

echo $snimki['url'];

}
 
Това няма да ми свърши работа...

искам да взема потребители на ги подредя по 10 на страница и на самата страница вадя.

Потребител 1
Снимка, Снимка, снимка

Потребител 2
снимка, снимка

Потребител 3
снимка, снимка, снимка, снимка


този код, който давате ще извади само 1 запис от снимките
а нали снимките трябва да се завъртят :?:


не само потребителите

ПС. Ако не се лъжа имаше query cache с което ставаше това.
 
PHP:
$row=mysql_query("SELECT *,group_concat(`pic`.`url` SEPARATOR '*') AS `allpic` FROM `user` JOIN `pic` ON `user`.`id`=`pic`.`user_id` GROUP BY `user`.`id` DESC LIMIT 10");
while($t=mysql_fetch_assoc($row))

{

$getpics=$t['allpic'];
$getpics=explode('*', $getpics);

echo $t['id']."-<br />";
foreach ($getpics as $snimki)
	{
		echo $snimki."<br>";
	}
}
 
Блгадаря за помоща... не е точно това, което търся, но с преработки ще стане. Ще ми свърши работа +1 и мерси отново :)
 

Back
Горе