Я создал таблицу и попытался узнать, как использовать группу по запросу, но ее дающий странный вывод.Группа по запросу в mysql и oracle
create table student(bid char(3), sname varchar(15), totfee float, feepaid float,
feebal float, branch char(3), city char(4));
insert into student values(101,'student1',16000,8000,8000,'mat','bang');
insert into student values(102,'student2',17000,8000,9000,'mar','bang');
insert into student values(103,'student3',16000,9000,7000,'btm','bang');
insert into student values(104,'student4',12000,8000,4000,'amr','hyde');
insert into student values(105,'student5',14000,6000,8000,'mat','bang');
insert into student values(106,'student6',18000,8000,10000,'mar','bang');
insert into student values(107,'student7',16000,4000,12000,'btm','bang');
insert into student values(108,'student8',11000,2000,9000,'amr','bang');
insert into student values(109,'student9',13000,5000,8000,'btm','bang');
insert into student values(110,'student10',16000,3000,13000,'amr','hyde');
Теперь я пытаюсь сортировать студентов по отраслям. Для этого я попробовал следующий запрос
В Oracle
select * from student group by branch;
выход
error- не
group by
выражение
В Mysql
выход:
+------+-----------+--------+---------+--------+--------+------+
| bid | sname | totfee | feepaid | feebal | branch | city |
+------+-----------+--------+---------+--------+--------+------+
| 104 | student4 | 12000 | 8000 | 4000 | amr | hyde |
| 103 | student3 | 16000 | 9000 | 7000 | btm | bang |
| 113 | student13 | 36000 | 18000 | 18000 | mal | bang |
| 102 | student2 | 17000 | 8000 | 9000 | mar | bang |
| 101 | student1 | 16000 | 8000 | 8000 | mat | bang |
+------+-----------+--------+---------+--------+--------+------+
На самом деле я ожидал, что все это сгруппируют всех студентов по отрасли .. Так как мне это сделать? и каково фактически использование группы по запросу? Я даже пробовал ссылаться с сайта, как w3school, и tpoint. Но не мог понять.
Предложение GROUP BY заявление используется в сочетании с агрегатными функциями для группировки множества результатов с помощью одного или более столбцов –
MySQL имеет очень неаккуратно реализацию оператора 'group by' (не сказать сломанного). Смотрите это: http://rpbouman.blogspot.de/2007/05/debunking-group-by-myths.html и это: http://www.mysqlperformanceblog.com/2006/09/06/wrong-group-by -makes-your-queries-fragile/для получения дополнительной информации –
Для оракула вам нужно использовать функцию агрегата для использования предложения group by. – Sadikhasan