Skip site navigation (1) Skip section navigation (2)

bytea-Felder und Indexe ...

From: Alvar Freude <alvar(at)a-blast(dot)org>
To: pgsql-de-allgemein(at)postgresql(dot)org
Subject: bytea-Felder und Indexe ...
Date: 2003-12-04 10:03:57
Message-ID: 2361290000.1070532237@gnarzelwicht.delirium-arts.de (view raw or flat)
Thread:
Lists: pgsql-de-allgemein
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hallo allerseits,

ich hatte das zwar schon auf der englischen bugs- und general-Liste
angesprochen, aber vielleicht hab ich mich mit meinem miesen englisch
falsch ausgedrückt oder hier hat jemand einen Rat.

Ich hab eine frisch von Text nach bytea gewandelte Spalte mit Index. Wenn
ich nun ein "="-Vergleich auf diese Spalte mache, klappt alles korrekt: sie
gibt mir die entsprechende Zeile zurück.

Bei Like klappt das nicht. Da wird fälschlicherweise nichts zurückgegeben.
Wenn ich aber den Index lösche (oder aus anderen Gründen kein Index-SCan
gemacht wird), dann werden wieder die korrekten Zeilen zurückgegeben.


Hier das, was psql sagt:


  db=> SELECT bytea_col FROM table WHERE bytea_col like '\\001\\012\\010%';
	bytea_col
  -----
  (0 Zeilen)

  db=> SELECT bytea_col FROM table WHERE bytea_col = '\\001\\012\\010';
   	 bytea_col
  --------------
	\001\012\010
  (1 Zeile)

  db=> SELECT bytea_col FROM table WHERE bytea_col like '\\001\\012\\010%';
	bytea_col
  -----
  (0 Zeilen)

  db=> begin;
  BEGIN
  db=> drop index table_bytea_col_idx;
  DROP INDEX
  db=> SELECT bytea_col FROM table WHERE bytea_col like '\\001\\012\\010%';
         	 bytea_col
  --------------------------
	\001\012\010\001\001\001
	\001\012\010
	\001\012\010\001\001\002
  (3 Zeilen)

  db=> rollback;
  ROLLBACK
  db=> SELECT bytea_col FROM table WHERE bytea_col like '\\001\\012\\010%';
	bytea_col
  -----
  (0 Zeilen)

  db=> SELECT bytea_col FROM table WHERE bytea_col like '\\001\\012\\010';
	bytea_col
  -----
  (0 Zeilen)


  db=> select version();
                                 version
  ---------------------------------------------------------------------
   PostgreSQL 7.3.4 on i386-portbld-freebsd4.8, compiled by GCC 2.95.4
  (1 Zeile)


Ciao
  Alvar

- -- 
** Alvar C.H. Freude -- http://alvar.a-blast.org/
**   Berufsverbot? http://odem.org/aktuelles/staatsanwalt.de.html
**   ODEM.org-Tour: http://tour.odem.org/
**   Informationsgesellschaft: http://www.wsis-koordinierungskreis.de/

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQE/zwaNOndlH63J86wRAhvFAKC0z8R6RINIQ2CaFW+GOm7fOSSCJgCfYszH
RJitFVxomWROK76NFDS1XoI=
=xJ7E
-----END PGP SIGNATURE-----


pgsql-de-allgemein by date

Next:From: Bernd HoffmannDate: 2003-12-26 20:03:50
Subject: Performance
Previous:From: Peter EisentrautDate: 2003-11-12 17:13:56
Subject: Deutsche PostgreSQL-Dokumentation online

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group