Imagine one hundred students - some of them are male, and some female. Then you ask them to separate - boys to go left, and girls to go right. Now you have two groups of them, grouped by sex. Next, kindly request to form a line: tallest one first, then a little bit smaller, etc. etc., and the smallest should be at the end of the line. When they finish that, you have them ordered by height.
Oracle deals with such things in a way you can read about here. Search for "group_by_clause" and "order_by_clause".
Littlefoot, that is the clearest simplest analogy I have seen to explain the difference between the two! Hope you don't mind if I 'borrow' your analogy in the future when I'm trying to explain this to someone
90% of users' problems can be resolved by punching them - the other 10% by switching off their PCs.