Jump to content

NOT RLIKE not working the way I want


XpertWorlock

Recommended Posts

Here is the query

SELECT * FROM files WHERE keywords RLIKE 'july' || keywords RLIKE '2008' && keywords NOT RLIKE 'membersonly' || title 
RLIKE 'july' || title RLIKE '2008'

 

I want any of the "keywords" to be brought up, as long as one of the keywords is not "membersonly" 

 

It works perfectly without it, but as I don't want the "membersonly" keyword, it decides to bring it up.

 

the way the column keywords is set up is each word has a space in between,

 

one row is 'membersonly july 2008'.

 

This shouldn't show up

 

What am I doing wrong here, I'm assuming it has to be just a bad query design.

Link to comment
https://forums.phpfreaks.com/topic/196591-not-rlike-not-working-the-way-i-want/
Share on other sites

Here is the query

SELECT * FROM files WHERE keywords RLIKE 'july' || keywords RLIKE '2008' && keywords NOT RLIKE 'membersonly' || title 
RLIKE 'july' || title RLIKE '2008'

 

I want any of the "keywords" to be brought up, as long as one of the keywords is not "membersonly" 

 

It works perfectly without it, but as I don't want the "membersonly" keyword, it decides to bring it up.

 

the way the column keywords is set up is each word has a space in between,

 

one row is 'membersonly july 2008'.

 

This shouldn't show up

 

What am I doing wrong here, I'm assuming it has to be just a bad query design.

 

Try using brackets like:

 

SELECT * FROM files WHERE (keywords RLIKE 'july' || keywords RLIKE '2008' || title 
RLIKE 'july' || title RLIKE '2008')  && keywords NOT RLIKE 'membersonly'

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.