2007-08-15 11:28:22 -03:00
|
|
|
import sqlite3
|
|
|
|
|
|
|
|
def collate_reverse(string1, string2):
|
2009-02-01 10:18:10 -04:00
|
|
|
if string1 == string2:
|
|
|
|
return 0
|
|
|
|
elif string1 < string2:
|
|
|
|
return 1
|
|
|
|
else:
|
|
|
|
return -1
|
2007-08-15 11:28:22 -03:00
|
|
|
|
|
|
|
con = sqlite3.connect(":memory:")
|
|
|
|
con.create_collation("reverse", collate_reverse)
|
|
|
|
|
|
|
|
cur = con.cursor()
|
|
|
|
cur.execute("create table test(x)")
|
|
|
|
cur.executemany("insert into test(x) values (?)", [("a",), ("b",)])
|
|
|
|
cur.execute("select x from test order by x collate reverse")
|
|
|
|
for row in cur:
|
|
|
|
print(row)
|
|
|
|
con.close()
|