>Now I want to make query on employee table which gives the result having
>names start between 'D' and 'M', so probable I'll do something " SELECT *
>FROM employee WHERE name BETWEEN 'd%' AND 'n%' ". But this is very 
>specific
>if I know the characters. I want to avoid using the character and use
>unicode for making the query which means rather than using 'd%' and 
>'n%', I
>wish to use unicode values[D --> U+0044] and [M --> U+004d].

You can use the ICU extension but it's very large and slow.

I've written a Unicode-aware SQLite extension for various text operations.
There are functions to do what you want (CHRW) and much more, like 
unaccented fuzzy search.  Scalar function should be portable.

BTW, you can't use % in litterals the way you suggest.  '%' is a LIKE 
pattern wildcard.

Depending on the target OS, you can also get a Unicode 
locale-independant collation.  This collation currently relies on a 
Windows call and should give identical results on all Windows systems 
whatever their location, language settings.  All Unicode scalar 
functions use internal Unicode tries.

Anyway there is provision to avoid compiling the collations if you 
don't use Windows.

It's beta code, but I and others use it in production without 
problems.  Drop me a mail if you're interested.



_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to