[Zope] Database table problem
Oliver Bleutgen
myzope@gmx.net
Wed, 02 Oct 2002 11:22:17 +0200
Renier Leenders wrote:
> Hello,
>
> I think this question is OT but nevertheless. I don't know where to put my
> question elsewhere.
> I use Zope as some kind of 'frontend' for an relational database. I want to
> use the database to store laws. The idea is to retrieve articles with "SELECT
> FROM law WHERE article_number >= x and article_number <= y".
> Unfortunately not all law articles are numbered with 1, 2, 3, etc. If they
> were I could define article_number as integer. But some articles are numbered
> with 1, 2, 2a ... 13ab etc. When I define the article_number as char and I
> retrieve I get a result with an sorting order like this: 1,10,11,11a,11b,12,
> 13ab ... 2a, 20, 21,21a. I could not find a database who supports "natural
> sort".
> Has someone an idea to work around this problem with Zope? Any suggestions
> would be appreciated.
In python, you could transform the strings to lists of strings of length
1, i.e. '12' -> ['1','2'].
Now build a list of these lists and sort it. This should work, try it on
a python command line.
But I don't know if something like this exists in a database.
HTH,
oliver