[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Отсортированную таблицу в запрос (MySQL)
You_Help_Me?
Вывожу в табличку некоторые поля из таблицы, можно ли чтоб перед выводом она сортировалась?
В поле rating числовые значения.

<?php
...
$stroki = mysql_query("SELECT `id` FROM `Joomla_users`"); // считаем колличество строк в таблице
$schet_strok = mysql_num_rows($stroki); // считаем колличество строк в таблице

mysql_query("SELECT * FROM `Joomla_users` ORDER BY `Joomla_users`.`rating` DESC LIMIT 0 , 30");// сортируем таблицу по полю rating
$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users`");
$array_table = mysql_fetch_array($table);
foreach($array_table as $schet_strok)
{
...
?>

Вообще возможно такое чтоб во mysql_fetch_array попадала отсортированная таблица?



Спустя 1 час, 10 минут, 24 секунды (2.02.2012 - 18:04) No, no help you написал(а):
Для сортировки используют ORDER BY для группировки GROUP BY


так что делай сам выводы.

ps - фиговый ник у тя wink.gif

Спустя 50 минут, 15 секунд (2.02.2012 - 18:54) You_Help_Me? написал(а):
Неужели так трудно помочь...
эх.
Цитата
Для сортировки используют ORDER BY для группировки GROUP BY

я знаю, к тому же ORDER BY есть в запросе.

Спустя 8 минут, 19 секунд (2.02.2012 - 19:02) You_Help_Me? написал(а):
Цитата
ps - фиговый ник у тя

А ник, от балды придумал. И извини что тебе не нравится wink.gif

Спустя 2 минуты, 22 секунды (2.02.2012 - 19:05) Игорь_Vasinsky написал(а):
Цитата
я знаю, к тому же ORDER BY есть в запросе.


ткни пальцем, где?

Цитата
$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users`");

Спустя 27 секунд (2.02.2012 - 19:05) You_Help_Me? написал(а):
Цитата (You_Help_Me? @ 2.02.2012 - 13:54)
mysql_query("SELECT * FROM  `Joomla_users` ORDER BY  `Joomla_users`.`rating` DESC LIMIT 0 , 30");// сортируем таблицу по полю rating

Или это не считается... blink.gif

Спустя 6 минут, 24 секунды (2.02.2012 - 19:12) Игорь_Vasinsky написал(а):
ест-но нет. ты же массив формируешь как:

кроме того ты не получишь массив после запроса

для получения массива есть другие функции у mysql

$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users` ORDER BY `rating`");

while($row = mysql_fetch_assoc($table))
{
echo $row['username'].' : '.$row['rating'].'<br/>';
}


об этом почитай.

ORDER BY `rating` DESC
ORDER BY `rating` ASC

вывод из БД я те сделал, как сформировать массив - думаю знаешь.


чтоб не получить нотис если таблица вдруг пуста

$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users` ORDER BY `rating`");

if(mysql_num_rows($table))
{
while($row = mysql_fetch_assoc($table))
{
echo $row['username'].' : '.$row['rating'].'<br/>';
}
}




Спустя 10 минут, 3 секунды (2.02.2012 - 19:22) You_Help_Me? написал(а):
Игорь_Vasinsky
Цитата
об этом почитай.

ORDER BY `rating` DESC
ORDER BY `rating` ASC

С этим знаком.
А если я просто сделаю

...
$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users` ORDER BY `Joomla_users`.`rating` DESC LIMIT 0 , 30");

дальше тот же fetch_array

Что может приключиться?

Спустя 5 минут, 35 секунд (2.02.2012 - 19:27) Игорь_Vasinsky написал(а):
mysql_query возвращает - ресурс

http://php.net/manual/ru/function.mysql-query.php

а не массив


а в массив данны напичкать можно с mysql_fetch_assoc или mysql_fetch_array

Спустя 2 минуты, 42 секунды (2.02.2012 - 19:30) You_Help_Me? написал(а):
Цитата
mysql_query возвращает - ресурс

http://php.net/manual/ru/function.mysql-query.php

а не массив


а в массив данны напичкать можно с mysql_fetch_assoc или mysql_fetch_array

Да, согласен, просто странно, но с таким запросом работает...

Спустя 2 минуты, 47 секунд (2.02.2012 - 19:33) Игорь_Vasinsky написал(а):
А почему нет то?

SELECT `username`,`rating` FROM `Joomla_users` ORDER BY  `Joomla_users`.`rating` DESC LIMIT 0 , 30


выбирает `username`,`rating`
сортирует по `Joomla_users`.`rating` (по очереди)
DESC не обязателен (он по дефолту)
LIMIT 0 , 30 - первые 30 строк

Спустя 2 минуты, 11 секунд (2.02.2012 - 19:35) You_Help_Me? написал(а):
Цитата
А почему нет то?

SELECT `username`,`rating` FROM `Joomla_users` ORDER BY  `Joomla_users`.`rating` DESC LIMIT 0 , 30

Просто вы мне предложили через mysql_fetch_assoc. В принципе разницы как таковой нету?
PS: я не про функции

Спустя 9 минут, 55 секунд (2.02.2012 - 19:45) Игорь_Vasinsky написал(а):
Цитата
Просто вы мне предложили через mysql_fetch_assoc. В принципе разницы как таковой нету?


между чем и чем????

Спустя 4 минуты, 2 секунды (2.02.2012 - 19:49) You_Help_Me? написал(а):
Цитата
между чем и чем????

Ну между
Цитата (You_Help_Me? @ 2.02.2012 - 16:22)
$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users` ORDER BY  `Joomla_users`.`rating` DESC LIMIT 0 , 30");

И
Цитата (Игорь_Vasinsky @ 2.02.2012 - 16:12)
$table = mysql_query("SELECT `username`,`rating` FROM `Joomla_users` ORDER BY `rating`");

if(mysql_num_rows($table))
{
    while($row = mysql_fetch_assoc($table))
    {
        echo $row['username'].' : '.$row['rating'].'<br/>';
    }
}
...


Спустя 3 минуты, 2 секунды (2.02.2012 - 19:52) Игорь_Vasinsky написал(а):
ну.

в первой цитате - запрос с LIMIT

во второй - запрос и вывод из БД

*я люблю твороженые булочки* - http://php.su/mysql/?functions

Спустя 4 минуты, 8 секунд (2.02.2012 - 19:56) You_Help_Me? написал(а):
Цитата (Игорь_Vasinsky @ 2.02.2012 - 16:52)
в первой цитате - запрос с LIMIT

во второй - запрос и вывод из БД

*я люблю твороженые булочки* - http://php.su/mysql/?functions

Все понял. Впрочем, спасибо за содействие. smile.gif

Спустя 1 час, 26 минут, 28 секунд (2.02.2012 - 21:23) Игорь_Vasinsky написал(а):
служу России.
Быстрый ответ:

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