Вывод из бд по 2м параметрам - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - Visavi.net
https://visavi.net/
[email protected] (admin)[email protected] (admin)Fri, 26 Apr 2024 10:03:46 +03004. <strong>Vantuz</strong>, мб и быстрее, но в моем запросе есть еще условия
https://visavi.net/topics/42811/687607
Вывод из бд по 2м параметрам Dmitry KokorinWed, 20 Jan 2016 13:20:41 +0300Сообщенияhttps://visavi.net/topics/42811/687607Через left join лучше, менее накладной и быстрее
https://visavi.net/topics/42811/687605
Вывод из бд по 2м параметрам Вантуз-менWed, 20 Jan 2016 12:01:08 +0300Сообщенияhttps://visavi.net/topics/42811/687605<pre class="prettyprint"> SELECT `id`,`name`,`family`
FROM `users`
WHERE `id` IN
(SELECT `user_id` FROM `friends` WHERE
`friend_id`=1 AND `user_add`=1 AND `friend_add`=0)
OR `id` IN
(SELECT `friend_id` FROM `friends` WHERE
`user_id`=1 AND `user_add`=0 AND `friend_add`=1)
</pre>
Может кому пригодится<br>
<br>
<em><span style="font-size:x-small">Добавлено через 01:46 сек.</span></em><br>
2. <strong>ofrojkeee</strong>, сам додумал как проще, но спасибо
https://visavi.net/topics/42811/687602
Вывод из бд по 2м параметрам Dmitry KokorinWed, 20 Jan 2016 10:39:52 +0300Сообщенияhttps://visavi.net/topics/42811/687602<pre class="prettyprint">SELECT
`u`.`name`,
`u`.`family`,
`f`.`user_id`,
`f`.`friend_id`
FROM `friends` AS `f`
LEFT JOIN `uesrs` AS `u` ON(`u`.`id` = `f`.`user_id`)
</pre>
<br>
запрос выведет все данные из таблицы friends <br>
при этом у тебя будет в одном массиве данные с двух таблиц<br>
<br>
дальше сам думай что тебе нужно)
https://visavi.net/topics/42811/687601
Вывод из бд по 2м параметрам ofrojkeeeWed, 20 Jan 2016 10:36:17 +0300Сообщенияhttps://visavi.net/topics/42811/687601есть таблицы<br>
=>friends<pre class="prettyprint">
user_id|friend_id|user_add|friend_add
1 |2 |0 |1
1 |3 |0 |1
4 |1 |1 |0</pre>
<br>
=>users<pre class="prettyprint">
id|name |family
1 |Вася |Петров
2 |Гадя |Хренова
3 |Гриша |Степанов
4 |Юля |Марьина</pre>
<br>
достаем id юзеров которые кинули заявку <pre class="prettyprint">
SELECT `user_id`,`friend_id`
FROM
`friends`
WHERE
`user_id`=1 AND `user_add`=0 AND `friend_add`=1
OR
`friend_id`=1 AND `user_add`=1 AND `friend_add`=0
</pre>
достаем данные этих юзеров <pre class="prettyprint">
SELECT `id`,`name`,`family`
FROM
`users`
WHERE
`id` = $result->friend_id OR `id` = $result->user_id
</pre>
достаем данные этих юзеров вариант 2<pre class="prettyprint">
SELECT `id`,`name`,`family`
FROM
`users`
WHERE
`id` IN ($result->friend_id,$result->user_id)
</pre>
оба варианта выводят 1 первый результат<br>
как сделать чтобы выводились все 3?
https://visavi.net/topics/42811/687600
Вывод из бд по 2м параметрам Dmitry KokorinWed, 20 Jan 2016 09:59:44 +0300Сообщенияhttps://visavi.net/topics/42811/687600