A tabela no banco de dados

Primeiro nós precisamos de uma tabela no banco de dados para rodar nossos exemplos.
Os exemplos abaixo são baseados no banco de dados MySQL, mas fique a vontade para adaptá-lo ao seu banco de dados.

Estrutura

O design dessa tabela é bem pobre (administradores de banco de dados, não me culpem!) mas vai ser muito útil em nossos exemplos.
Crie um database chamado phpreports (se o seu banco de dados permite você criar esse tipo de coisa), coloque-o em uso e crie uma tabela chamada saleslog (atenção! vou deixar os nomes dos campos da tabela e do relatório em inglês, para evitar muito trabalho traduzindo isso aqui ehehe) com campos iguais à esses:

name type length decimal places
id numeric 5
name char 50
city char 50
product char 50
value numeric 15 2

Script para criar a tabela

create table saleslog ( id numeric(5), name varchar(50), city varchar(50), product varchar(50), value numeric(15,2) );

Agora coloque os seguintes valores lá:

1,"Eustaquio Rangel","Sao Jose do Rio Preto, SP","Book - Linux Programming",25
1,"Eustaquio Rangel","Sao Jose do Rio Preto, SP","Book - Design Patterns" ,35
2,"Ana Carolina" ,"Sao Jose do Rio Preto, SP","Book - Photoshop 7.0" ,22.50
3,"Andre Kada" ,"Sao Paulo, SP" ,"CD - Kreator - Violent Revolutions",15

Script para inserção de dados:

insert into saleslog values (1,"Eustaquio Rangel","Sao Jose do Rio Preto, SP","Book - Linux Programming",25);
insert into saleslog values (1,"Eustaquio Rangel","Sao Jose do Rio Preto, SP","Book - Design Patterns",35);
insert into saleslog values (2,"Ana Carolina" ,"Sao Jose do Rio Preto, SP","Book - Photoshop 7.0",22.5);
insert into saleslog values (3,"Andre Kada" ,"Sao Paulo, SP","CD - Kreator - Violent Revolutions",15);

Agora temos algo para trabalhar.