11.19 Numbering Query Output Rows Sequentially
11.19.1 Problem
You want to number
query output rows.
11.19.2 Solution
If you're writing your own program, just add the row
number yourself.
11.19.3 Discussion
A type of sequence that has nothing to do with the contents of your
database is to number output rows from a query. When working within
an API, you can number the rows by maintaining a counter and
displaying its current value with each row's
contents. Here is an example in
Python, using the
insects table. It simply displays a numbered list
of the distinct values in the origin column of the
table:
cursor = conn.cursor ( )
cursor.execute ("SELECT DISTINCT origin FROM insect")
count = 1
while 1:
row = cursor.fetchone ( )
if row == None:
break
print count, row[0]
count = count + 1
cursor.close ( )
11.19.4 See Also
The mysql program provides no explicit
row-numbering facilities, although you can use a SQL variable to
include an extra row number column in a query's
output. Another way to produce results that may be suitable for your
purposes is to filter mysql output through another
program that adds row numbers. These techniques are described in
Recipe 1.27.
|