Thread: like vs =
Hallo, I just encountered a stange behaviour: The following query gives zero rows. bitoek=> SELECT name from file where name = 'mitarbeiter/mit/mitarbeiter_ehemalig.php'; name ------ (0 Zeilen) Replacing "=" by like and escaping the underscore gives the row I knew to be there: bitoek=> SELECT name from file where name like 'mitarbeiter/mit/mitarbeiter\_ehemalig.php'; name ------------------------------------------ mitarbeiter/mit/mitarbeiter_ehemalig.php (1 Zeile) Other queries with the equal operator do match rows. Am I missing something? Postgresql: 8.1.1 Fieldtype: text Database encoding: Latin9 Regards, Stefan -- ----------------------------- Dr. Stefan Holzheu Tel.: 0921/55-5720 Fax.: 0921/55-5709 BayCEER EDV und Datenbanken Universitaet Bayreuth D-95440 Bayreuth -----------------------------
Stefan Holzheu <stefan.holzheu@bayceer.uni-bayreuth.de> writes: > Other queries with the equal operator do match rows. Am I missing something? > Postgresql: 8.1.1 > Fieldtype: text > Database encoding: Latin9 What LC_COLLATE locale are you using? Your report looks a whole lot like the recently identified problem with locales that think that some not-bitwise-identical strings are "equal", as in this thread: http://archives.postgresql.org/pgsql-general/2005-12/msg00740.php If the same queries return sane results after doing set enable_indexscan = off, then that's probably what the problem is. If so, updating to 8.1.2 and REINDEXing should fix it. regards, tom lane
Tom Lane schrieb: > Stefan Holzheu <stefan.holzheu@bayceer.uni-bayreuth.de> writes: >>Other queries with the equal operator do match rows. Am I missing something? > >>Postgresql: 8.1.1 >>Fieldtype: text >>Database encoding: Latin9 > > What LC_COLLATE locale are you using? Your report looks a whole lot > like the recently identified problem with locales that think that some > not-bitwise-identical strings are "equal", as in this thread: > http://archives.postgresql.org/pgsql-general/2005-12/msg00740.php LC_COLLATE was POSIX > > If the same queries return sane results after doing set enable_indexscan > = off, then that's probably what the problem is. If so, updating to > 8.1.2 and REINDEXing should fix it. > You were right. Query works now. Thanks Stefan > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 2: Don't 'kill -9' the postmaster > > -- ----------------------------- Dr. Stefan Holzheu Tel.: 0921/55-5720 Fax.: 0921/55-5709 BayCEER EDV und Datenbanken Universitaet Bayreuth D-95440 Bayreuth -----------------------------