Вопрос - Ответ по MySQL - 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)Sat, 23 Nov 2024 20:10:49 +0300справился без join обычным подзапросом с union all
https://visavi.net/topics/1212/687989
Вопрос - Ответ по MySQL Dmitry KokorinSat, 06 Feb 2016 22:42:45 +0300Сообщенияhttps://visavi.net/topics/1212/687989<pre class="prettyprint">$query = 'SELECT DISTINCT `u`.`id`, `u`.`name`,`u`.`family`,`u`.`avatar`,`u`.`online`
FROM `users` `u`
RIGHT JOIN `messages` `m` ON
`m`.`id_from` = `u`.`id` OR `m`.`id_to` = `u`.`id`
WHERE
`m`.`id_to` = '.$id.' AND `m`.`id_from` = `u`.`id`
OR
`m`.`id_from` = '.$id.' AND `m`.`id_to` = `u`.`id`
GROUP BY `u`.`id` ORDER BY `m`.`time` DESC';</pre>
Вот так выводит всё, но опять без сортировки, а нужна сортировка по последним сообщениям с группировкой по id юзера
https://visavi.net/topics/1212/687983
Вопрос - Ответ по MySQL Dmitry KokorinSat, 06 Feb 2016 19:44:18 +0300Сообщенияhttps://visavi.net/topics/1212/687983в общем попробовал с LEFT JOIN <br>
<pre class="prettyprint">$query = 'SELECT `u`.`id`,`u`.`name`,`u`.`family`,`u`.`avatar`,`u`.`online`, `m`.`id_to`,`m`.`id_from`
FROM `users` `u`
LEFT JOIN `messages` `m` ON
`m`.`id_from` = `u`.`id` WHERE `m`.`id_to` = '.$id.'
OR
`m`.`id_to` = `u`.`id` WHERE `m`.`id_from` = '.$id.'';</pre>
ругается На синтакс<br>
<pre class="prettyprint">syntax to use near 'WHERE `m`.`id_from` = </pre>где я накосячил?
https://visavi.net/topics/1212/687973
Вопрос - Ответ по MySQL Dmitry KokorinSat, 06 Feb 2016 12:29:13 +0300Сообщенияhttps://visavi.net/topics/1212/687973682. <strong>ramzes</strong>, с ёинами пробовал, но у меня с ними криворуко пока получается, я их еще не вкурил))
https://visavi.net/topics/1212/687972
Вопрос - Ответ по MySQL Dmitry KokorinSat, 06 Feb 2016 11:35:43 +0300Сообщенияhttps://visavi.net/topics/1212/687972Left join используй, выгребай сообщения и джоином их авторов
https://visavi.net/topics/1212/687971
Вопрос - Ответ по MySQL ramzesSat, 06 Feb 2016 10:59:14 +0300Сообщенияhttps://visavi.net/topics/1212/687971В общем есть запрос списка контактов <br>
<pre class="prettyprint">SELECT `id` FROM `users` WHERE
`id` IN (SELECT `id_from` FROM `messages` WHERE
`id_to` = ".$id." AND `del_to` = 0)
OR `id` IN (SELECT `id_to` FROM `messages` WHERE `id_from` = ".$id." AND `del_from` = 0)</pre>Нужно сделать вывод с сортировкой по последним сообщениям, пробовал так<pre class="prettyprint">
SELECT `id` FROM `users` WHERE
`id` IN (SELECT `id_from` FROM `messages` WHERE `id_to` = ".$id." AND `del_to` = 0 ORDER BY `id` DESC)
OR `id` IN (SELECT `id_to` FROM `messages` WHERE `id_from` = ".$id." AND `del_from` = 0 ORDER BY `id` DESC)</pre>не помогает, кто сообразит в чем загвоздка?
https://visavi.net/topics/1212/687970
Вопрос - Ответ по MySQL Dmitry KokorinSat, 06 Feb 2016 09:48:29 +0300Сообщенияhttps://visavi.net/topics/1212/687970679. <strong>Nasgul</strong>, если у тебя что-то типа <pre class="prettyprint"><?php
$array[$id] = mysql_fetch_array($id);
return $array[$id];</pre>
То попробуй так <pre class="prettyprint"><?php
return mysql_fetch_array($id)</pre>
https://visavi.net/topics/1212/686334
Вопрос - Ответ по MySQL Dmitry KokorinMon, 14 Sep 2015 20:26:31 +0300Сообщенияhttps://visavi.net/topics/1212/686334Ребята подскажите что за ошибка! На денвере все норм на хосте выдает вот это <br>
Strict Standards: Resource ID#18 used as offset, casting to integer (18)
https://visavi.net/topics/1212/686323
Вопрос - Ответ по MySQL АлексейMon, 14 Sep 2015 11:56:59 +0300Сообщенияhttps://visavi.net/topics/1212/686323677. <strong>G_A_N_J_A_R</strong>, Отлично, спасибо! Меньше нагрузки - это хорошо )))
https://visavi.net/topics/1212/680664
Вопрос - Ответ по MySQL АндрейFri, 13 Mar 2015 11:25:42 +0300Сообщенияhttps://visavi.net/topics/1212/680664676. Незшт. Тем, что быстрее будет и меньше нагрузка на БД. В твоем же случае будет выполнятся сначала функция LOWER а потом регулярка для каждого поля.
https://visavi.net/topics/1212/680662
Вопрос - Ответ по MySQL БогданFri, 13 Mar 2015 11:11:04 +0300Сообщенияhttps://visavi.net/topics/1212/680662675. <strong>G_A_N_J_A_R</strong>, Спасибо! Так тоже работает <img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> <br>
Можно еще пояснение в чем отличие от моего примера? <br>
<pre class="prettyprint">$total = DB::run() -> querySingle("SELECT count(*) FROM `users` WHERE LOWER(`users_email`) REGEXP '^[a-z0-9]';");</pre>
https://visavi.net/topics/1212/680636
Вопрос - Ответ по MySQL АндрейThu, 12 Mar 2015 22:17:16 +0300Сообщенияhttps://visavi.net/topics/1212/680636674. Правильно понял что тебе нужно кол-во записей с не пустым полем users_email? тогда достаточно<br>
<pre class="prettyprint">
$total = DB::run() -> querySingle("SELECT count(`users_email`) FROM `users` WHERE `users_email` IS NOT NULL AND `users_email`<>''");
</pre>
https://visavi.net/topics/1212/680627
Вопрос - Ответ по MySQL БогданThu, 12 Mar 2015 21:19:51 +0300Сообщенияhttps://visavi.net/topics/1212/680627Тут дело в чем было - добавил регистрацию через социальные сети, что бы удобней было просматривать пользователей, решил сделать их сортировку.
https://visavi.net/topics/1212/680618
Вопрос - Ответ по MySQL АндрейThu, 12 Mar 2015 19:08:46 +0300Сообщенияhttps://visavi.net/topics/1212/680618<pre class="prettyprint">$total = DB::run() -> querySingle("SELECT count(*) FROM `users` WHERE LOWER(`users_email`) REGEXP '^[a-z0-9]';");</pre>
Так решил проблему.
https://visavi.net/topics/1212/680616
Вопрос - Ответ по MySQL АндрейThu, 12 Mar 2015 18:14:26 +0300Сообщенияhttps://visavi.net/topics/1212/680616671. <strong>Iznaur95</strong>, нет так считает все поля в таблице.
https://visavi.net/topics/1212/680612
Вопрос - Ответ по MySQL АндрейThu, 12 Mar 2015 16:29:07 +0300Сообщенияhttps://visavi.net/topics/1212/680612