Search Postgresql Archives

Re: Searching email, Full Text Search prefix, not expected results

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



But tsvector recognices email format as natural. And I'm not looking for a substring. Please see the queries are incremental with the search string, and see last four results ... I think some think it's no working properly.

El 14 de marzo de 2012 19:05, Daniel Vázquez <daniel2d2art@xxxxxxxxx> escribió:
Hi guys, I'm going to crazy about FTS with prefix agains email values on tsvector. Follow how to reproduce:

For the next tsvector:

=# select to_tsvector('user@xxxxxxxxxxx')
     to_tsvector      
----------------------
 'user@xxxxxxxxxxx':1

I expects TRUE for all next tsqueryes:

select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('u:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('us:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('use:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@c:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@co:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@com:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@comp:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@compa:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@compan:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@company:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@company.:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@company.c:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@xxxxxxxxxx:*');
select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@xxxxxxxxxxx:*');

But NOT, there are some NOT expected and confusing me results:

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('us:*');
 ?column? 
----------
 t
(1 row)

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user:*');
 ?column? 
----------
 t

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@:*');
 ?column? 
----------
 t

select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@comp:*');
 ?column? 
----------
 f   <---- FALSE (I expects TRUE)

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@company:*');
 ?column? 
----------
 f   <---- FALSE (I expects TRUE)

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@company.:*');
 ?column? 
----------
 f   <---- FALSE (I expects TRUE)

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@company.c:*');
 ?column? 
----------
 f  <---- FALSE  (I expects TRUE)

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@xxxxxxxxxx:*');
 ?column? 
----------
 t  <---- TRUE .... OOhhhhhHHH I'm going crazy!!!

=# select to_tsvector('user@xxxxxxxxxxx') @@ to_tsquery('user@xxxxxxxxxxx:*');
 ?column? 
----------
 t  <---- TRUE ... Yes I'm crazy.

Please some ligths about it.
(I follow the official docs in http://www.postgresql.org/docs/9.1/interactive/textsearch.html for my knowledge) 

Thx!



--
Daniel Vázquez
SICONET (A Bull Group Company)
Torre Agbar. Avda. Diagonal, 211 - planta 23
08018 - Barcelona
telf: + 34 93 2272727 (Ext. 2952)
fax: + 34 93 2272728
www.bull.es - www.siconet.es
daniel.vazquez@xxxxxxx


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux