On 21 Aug 2013, at 5:02pm, Igor Tandetnik <i...@tandetnik.org> wrote:
> I imagine you'd still want to be able to put COLLATE clause on the column > definition, as in "create table t (x collate NOCASE);". How is this supposed > to work in your hypothetical new world? It works the same as it does now, I think. The COLLATE clause in that position isn't used for storing the value itself. It's used later on for when two values in that column are compared with one-another. For example, as the default COLLATE for an index defined on that column. Which would still work the same way. > Collation is a property of the value, similar to type and affinity - it must > be, to allow this kind of annotation. Along with other properties, collation > then affects the behavior of operators acting on the value. I'm going to let the SQLite experts argue over that one. I don't think a COLLATE can be a property of a value. If it was you could compare two different values with different collations. Perhaps it's a property of an index component. On 21 Aug 2013, at 5:11pm, Dan Kennedy <danielk1...@gmail.com> wrote: > ORDER BY and GROUP BY clauses to consider as well. You want to do: > > SELECT ... FROM ... ORDER BY <expr> COLLATE nocase; Yes, those would both make sense. Simon. _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users