formatting output: grouping results with identical fields

formatting output: grouping results with identical fields

am 10.05.2003 00:06:32 von Molly Gibson

Sorry if this posts twice, I am having a horrible time
with the yahoo interface.

Hi list,
Textile geek-grrl here--I recently created a postgres
database to keep my fabric, pattern, & project
inventory. (Do I win a prize for 'weirdest thing for
which someone has used postgres'?) I am at the point
where I would like to refine the user interface, even
though I'm the only one who will ever use it.

Currently I have this query:
SELECT pattern_category, pattern_manufacturer,
pattern_number, pattern_desc
FROM patterns
ORDER BY pattern_category, pattern_manufacturer,
pattern_number;

which I have output into a plain ol' table like so
(code snippet only, I know it doesn't produce valid
html)
while ($i < $num) {
$row = pg_fetch_object($pattern_info,$i);
print ("$row->pattern_category
$row->pattern_manufacturer
$row->pattern_number
$row->pattern_desc
\n");
$i++;
}

This is great for my purposes, but I'd like to clean
up the table a bit more and have the category only
print once each time it occurs, and the manufacturer
only print once in each category.

Here is what I came up with:
while ($i < $num) {
$row = pg_fetch_object($pattern_info,$i);
if ($row->pattern_category != $newcategory) {
//we have a new category heading
$newcategory = $row->pattern_category;
print ("$newcategory\n");
}
if ($row->pattern_manufacturer !=
$newmanufacturer) {
//we have a new manufacturer sub-heading
$newmanufacturer = $row->pattern_manufacturer;
print ("$newmanufacturer\n");
}
//print the rest of the stuff
print
("$row->pattern_number$row->pattern_desc\n");
$i++;
}

This seems sorta kludgy and a bit limited--like I
can't just swap out a different field to sort on. Is
there a simpler way to achieve this?

I've been poking around php.net and I didn't find
anything--but I can't be the only one who wants to do
this. Could somebody give me some search tips so I
can figure this out?

Thanks!
mol

__________________________________
Do you Yahoo!?
The New Yahoo! Search - Faster. Easier. Bingo.
http://search.yahoo.com


---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org