Thanks Richard. That makes it clear why it works (or doesn't) the way it does. New syntax I learned today: sqlite> select 'b' collate nocase = 'B'; 'b' collate nocase = 'B' ------------------------ 1 This positioning of collate is new to me... Can I suggest an additional sentence in datatype3.html: The collating sequence used for expressions of the form "x IN (y, z, ...)" is the collating sequence of x. If an explicit collating sequence is required it should be applied to the left hand side of the expression: "x COLLATE nocase IN (y,z, ...)"