[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Прошу помощи с запросом и выводом
Nik_Bar
Ребят, такая проблем. У какого-либо профиля, который занесен в БД есть два числа(это id записи из другой таблицы). И вот вопрос, мне нужно вывести эти две записи, у которых id равны этим двум значениям в полях. Как составить sql запрос в php файле.

<?php
$p1 = $row_user['p1'];
$p2 = $row_user['p2'];
?>

^^ вот эти две переменных.
rooor
если правильно понял - примерно так
SELECT t1.`p1`, t2.`p2` 
FROM `table_users` tu
LEFT JOIN `table1` t1 ON t1.`id` = tu.`id_table1`
LEFT JOIN `table2` t2 ON t2.`id` = tu.`id_table2`
Nik_Bar
А пояснить можешь? Сразу скажу, что я уже вывел из БД эти id полей, которых надо достать из другой таблицы( это как раз переменные $p1 и $p2). Да и можете пояснить, как потом то, что я подучу вывести на страницу.
rooor
Есть таблица table_users
В ней есть поля id_table1 и id_table2
Эти поля указывают id записи других таблиц(table1 и table2 соответственно)

SELECT t1.`p1` - выбрать поле p1 из таблицы t1(это алиас таблицы table1)
LEFT JOIN `table1` t1 ON t1.`id` = tu.`id_table1`(присоединить строку из таблицы table1, где id записи равен значению поля id_table1 в таблице table_users)
Nik_Bar
а как потом все это вывести?
rooor
$query = mysql_query("SELECT t1.`p1`, t2.`p2` 
FROM `table_users` tu
LEFT JOIN `table1` t1 ON t1.`id` = tu.`id_table1`
LEFT JOIN `table2` t2 ON t2.`id` = tu.`id_table2`"
);
while($result = mysq_fetch_assoc($query))
{
echo $result['p1'];
}
Nik_Bar
Да да я уже понял. СПС!
Nik_Bar
Хм что-то я опять не понял. Смотри. Я из таблицы users вывел данные из полей p1 и p2. Теперь мне нужно как бы получить две записи из таблицы data, у которых id=p1 и id=p2
rooor
я тоже не понял, т.к. не знаю структуру БД, где что лежит, что надо вывести и по каким полям
Nik_Bar
В таблице users есть два поля `p1` и `p2`. В них хранятся значения. Мне нужно вывести из таблицы `object` те записи, у которых id=p1 и p2. Значения p1 и p2 я уже вывел. Теперь мне нужно создать запрос на то, чтобы вывести эти записи из таблицы `object`, у которых id=p1 и id=p2.

Допусти p1=1 и p2=2, значит у меня выведется две записи из таблицы `object`.
Вот только не знаю как вывести эти записи.
rooor
как вариант
mysql_query("SELECT * FROM `object` WHERE `id` = ".(int)$p1." OR `id` = ".(int)$p2);
Nik_Bar
OR это или, а мне нужно вывести и ту и другую запись.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.