From: | Marc Fromm <Marc(dot)Fromm(at)wwu(dot)edu> |
---|---|
To: | Craig James <cjames(at)emolecules(dot)com> |
Cc: | "pgsql-admin(at)postgresql(dot)org" <pgsql-admin(at)postgresql(dot)org> |
Subject: | Re: select exact term |
Date: | 2013-03-28 19:02:16 |
Message-ID: | 93361C67E4EE844A80935863A4FF4B6C0632FC7D@Exch2010MB-2.univ.dir.wwu.edu |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
I am struggling with the syntax. In php I create my where clause as shown, using ~* for case insensitive:
$search = "art";
$strSQL2 = "WHERE (title ~* [[:<:]]'$search'[[:>:]] OR description ~* [[:<:]]'$search'[[:>:]]) ";
When executed zero records are returned even though the ILIKE statement shown below returns records that do have the word art.
$search = "art";
$strSQL2 = "WHERE (title ILIKE '%$search%' OR description ILIKE '%$search%') ";
Thanks for the insight.
From: Craig James [mailto:cjames(at)emolecules(dot)com]
Sent: Thursday, March 28, 2013 11:05 AM
To: Marc Fromm
Cc: pgsql-admin(at)postgresql(dot)org
Subject: Re: [ADMIN] select exact term
On Thu, Mar 28, 2013 at 10:51 AM, Marc Fromm <Marc(dot)Fromm(at)wwu(dot)edu<mailto:Marc(dot)Fromm(at)wwu(dot)edu>> wrote:
Is there a way to create a select statement that will select a record if the exact term is found in a field that contains the text to describe something?
If I create a select statement using WHERE description LIKE 'art' I get every record that has words like depart, start and so on.
If I create a select statement using WHERE description = 'art' I get no results even though the word art is in some records description field.
Use a regular expression instead of LIKE, and the left- and right-word-boundary expressions (see section 9.7 of the Postgres manual):
db=> select 'the quick brown fox' ~ '[[:<:]]brown[[:>:]]';
?column?
----------
t
=> select 'the quick brown fox' ~ '[[:<:]]own[[:>:]]';
?column?
----------
f
Craig
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2013-03-28 20:06:59 | Re: select exact term |
Previous Message | Craig James | 2013-03-28 18:05:16 | Re: select exact term |