Re: Re: GROUPING and ORDERING and CONFUSION
От | Ross J. Reedstrom |
---|---|
Тема | Re: Re: GROUPING and ORDERING and CONFUSION |
Дата | |
Msg-id | 20000420105834.B7013@rice.edu обсуждение исходный текст |
Ответ на | Re: GROUPING and ORDERING and CONFUSION ("Tim Johnson" <tim@celestialdesign.co.uk>) |
Список | pgsql-sql |
Hmm, souynds like you want all the ruples returned, right? Then it's not really a GROUP problem, just an ORDER BY one. If all your data follows the example you gave, this should work: reedstrm=# select * from fred order by text(num); num | name --------+---------------------------------------- 15 | First Category Heading 1510 | first category subheading 1511| second category subheading 1560 | spurious category subheading156010 | first spurious category subheading156011| second spurious category subheading 16 | Second Category Heading 1610 | Second category subheading161010| Second category subheading subheading (9 rows) However, I _think_ your deeper question has to do with the indentation part, right? Are you trying to indent based on category level? If you've got some sort of programming language between your output and the SQL, then something like: reedstrm=# select text(num) as num ,length( text(num))/2 as level, name from fred order by text(num); num | level | name --------+-------+----------------------------------------15 | 1 | First Category Heading1510 | 2 | firstcategory subheading1511 | 2 | second category subheading1560 | 2 | spurious category subheading156010| 3 | first spurious category subheading156011 | 3 | second spurious category subheading16 | 1 | Second Category Heading1610 | 2 | Second category subheading161010 | 3 | Second category subheadingsubheading (9 rows) Then use the 'depth' to output the proper indentation level. Ross -- Ross J. Reedstrom, Ph.D., <reedstrm@rice.edu> NSBRI Research Scientist/Programmer Computer and Information Technology Institute Rice University, 6100 S. Main St., Houston, TX 77005 On Thu, Apr 20, 2000 at 02:28:01AM +0100, Tim Johnson wrote: > Hello, > > > My problem is I want to pull that data out and group it so that it comes out > just the way it went in.. So my page can read: > > 15: First Category Heading > 1510: first category subheading > 1511: second category subheading > 16: ... and so on.. > >
В списке pgsql-sql по дате отправления: