SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 21.03.2011 23:37:56

-O-J-A-
Участник
Зарегистрирован: 01.03.2011
Сообщений: 12

Выбрать данный из двух таблиц

Всем здравствуйте!

Есть вот две таблицы:

Первая; название: friends. ($table_name)

Данные в ней:
refer    ref    pod
1       4         1
4       1         1

Вторая; название: users. ($table_name2)

Данные в ней:
id     name_user
4      Иван   
1      Василь   


Имею такой код:

Код:

$query = 'SELECT * FROM `'.$table_name.'` WHERE refer IN("'.$id_view.'") AND pod="1" ORDER BY `id` DESC';
$sql = @mysql_query($query);
    
while ($sql_data = @mysql_fetch_array($sql)) {

$usersa = $sql_data['ref'];

$query2 = 'SELECT * FROM `'.$table_name2.'` WHERE id IN("'.$usersa.'") ORDER BY `id` DESC';  
$sql2 = @mysql_query($query2);

echo ('<a href="profile.php?id='.$sql_data['ref'].'">');
while ($sql_data = @mysql_fetch_array($sql2)) {
echo (''.$sql_data['name_user'].'');
}


}

Он ужасный, но как то работает, суть вопроса в том что этот код не позволяет произвести некоторые вещи,
как можно оформить выборку по человеческому? smile

Отредактированно -O-J-A- (21.03.2011 23:38:32)

Неактивен

 

#2 22.03.2011 07:38:43

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5831

Re: Выбрать данный из двух таблиц

"Пойди туда, не знаю куда; принеси то, ..." smile
Какие вещи вы хотите произвести ? Какую задачу вы решаете изначально?

Неактивен

 

#3 22.03.2011 14:45:19

-O-J-A-
Участник
Зарегистрирован: 01.03.2011
Сообщений: 12

Re: Выбрать данный из двух таблиц

извините что я так спонтанно объяснил,
мне нужно сделать одновременную выборку из двух разных таблиц, по параметрам
так как сейчас вывожу я показал в коде, но это не позволяет как нужно отобразить данные (сверстать) neutral

Отредактированно -O-J-A- (22.03.2011 14:51:00)

Неактивен

 

#4 22.03.2011 18:23:33

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5831

Re: Выбрать данный из двух таблиц

Посмотрите на join (http://dev.mysql.com/doc/refman/5.5/en/join.html), что-то вроде:

select * from friends join `users` u on refer=u.id where pod=1 order by ..

Точнее сказать не могу, так как вы не говорите, что хотите получить smile

Неактивен

 

#5 22.03.2011 18:55:36

-O-J-A-
Участник
Зарегистрирован: 01.03.2011
Сообщений: 12

Re: Выбрать данный из двух таблиц

vasya, Спасибо!

а вот, что я хочу:
есть таблица в которой хранятся допустим друзья (idы), я это вывожу но этого мало, нужно получить еще имя которое лежит в другой табличке,
количество рядков в этих двух табл. разное (так как все пользователи не друзья)))) )

Неактивен

 

#6 23.03.2011 00:02:10

-O-J-A-
Участник
Зарегистрирован: 01.03.2011
Сообщений: 12

Re: Выбрать данный из двух таблиц

чет не выходит

Неактивен

 

#7 23.03.2011 00:05:03

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5831

Re: Выбрать данный из двух таблиц

Что именно не выходит?
Пишите конечный результат, который хотите получить из данных приведенных в первом посте.

Неактивен

 

#8 23.03.2011 01:14:11

-O-J-A-
Участник
Зарегистрирован: 01.03.2011
Сообщений: 12

Re: Выбрать данный из двух таблиц

Вывести список друзей

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson