|
|
|
| Допустим я пишу:
select id,type,bal from test order by bal desc;
|
На выходе:
id | type | bal
3 | два | 9
5| один | 8
1 | два | 7
6 | три | 6
5 | два | 5
4 | три | 4
2 | один | 3
|
Как построить запрос что-бы ваходило:
id | type | bal
3 | два | 9
5| один | 8
6 | три | 6
|
Тоесть что-бы выводилась только одна строка с параметром type | |
|
|
|
|
|
|
|
для: kest131
(12.09.2005 в 21:20)
| | Надо использовать DISTINCT.
select id, distinct type,bal from test order by bal desc;
|
| |
|
|
|
|
|
|
|
для: codexomega
(12.09.2005 в 21:28)
| | Не работает
Работает только так:
select distinct type,bal,id from test order by bal desc;
|
Но выводит не то что нужно. | |
|
|
|
|
|
|
|
для: kest131
(13.09.2005 в 18:38)
| | Попробуйте так:
select distinct(type) as type,bal,id from test order by bal desc;
|
| |
|
|
|
|
|
|
|
для: Loki
(13.09.2005 в 22:19)
| | Выводит все равно не правильно
Значения в колонке type порторяются. | |
|
|
|
|
|
|
|
для: kest131
(12.09.2005 в 21:20)
| | Можно воспользоваться следующей конструкцией:
<?
$query = mysql_query("SELECT id,type,bal FROM test GROUP BY type");
?>
|
| |
|
|
|
|
|
|
|
для: Artemy
(12.09.2005 в 21:53)
| | Нужно что-бы производилась сортировка столбца bal до функции GROUP BY type | |
|
|
|
|
|
|
|
для: kest131
(12.09.2005 в 21:20)
| | Попробуйте этот запрос
Select type,bal,id from test group by type order by bal desc
|
| |
|
|
|
|
|
|
|
для: napTu3aH
(14.09.2005 в 19:05)
| | Такой скрипт работает но ваводит не то.
Он сначала отбирает данные из колонки type а потом их сортирует (order by bal desc ).
Надо наоборот :
Что-бы сначала он сортировал (order by bal desc ) а потом отбирал данные из колонки type | |
|
|
|
|
|
|
|
для: kest131
(14.09.2005 в 19:40)
| | Select type,bal,id from test order by type group by bal desc | |
|
|
|
|
|
|
|
для: Денис
(14.09.2005 в 20:36)
| | Это конечно бы сработало но синтаксис SQL не позволяет делать сначала order by
а потом group by только наоборот... | |
|
|
|
|
|
|
|
для: kest131
(14.09.2005 в 19:40)
| | вам нужно, чтобы данные из колонки type и bal были неповторяющимися? может быть, попробовать в два этапа: сначала выбрать из одной колонки с distinct, а потом из другой? | |
|
|
|
|
|
|
|
для: Денис
(14.09.2005 в 20:57)
| | Нужно что-бы неповторялись данные только из колонки type.
В два этапа?Напиши как (если это даст результат) | |
|
|
|
|
|
|
|
для: kest131
(14.09.2005 в 21:10)
| | Предложение GROUP BY позволяет объединять поля в запросе.
Предложение ORDER BY позволяет упорядочивать выбираемые записи. При использовании совместно с предложением ключевого слова ASC можно определить возрастающий порядок, а используя DESC, определяется убывающий порядок.
SELECT * FROM Orders ORDER BY Name ASC;
Также можно упорядочивать записи по нескольким полям. Сначала записи упорядочиваются по первому полю, если в нём есть записи, имеющие одинаковые значения, то они упорядочиваются по следующему указанному в предложении ORDER BY полю и т.д. Имена полей пишутся через запятую [,].
SELECT * FROM Orders ORDER BY Name ASC, Email ASC;
Попоробуйте вот такой запрос:
SELECT id, type, bal FROM test ORDER BY type DESC, bal DESC | |
|
|
|