2016-05-16 9 views
2

と等しくない私は、LIKEでクエリを作成しようとして=条件だ:しかし、クエリ結果がpost_typeによってフィルタリングされていないPostgresのLIKEでクエリと

SELECT * 
FROM posts 
WHERE title LIKE 'term%' 
    OR NAME LIKE 'term%' 
AND post_type != 'type'; 

を!。私の構文に何か問題はありますか?

答えて

2

ANDには演算子の優先順位があるため、おそらくかっこが必要です。

SELECT * 
FROM posts 
WHERE (title LIKE 'term%' OR NAME LIKE 'term%') 
    AND post_type != 'type'; 

今括弧なしであなたがトリックだった

SELECT * 
FROM posts 
WHERE title LIKE 'term%' 
    OR (  NAME LIKE 'term%' 
     AND post_type != 'type'); 
+0

を持っているので!ありがとう。私はできる場合upvote – nateM

+0

あなたは十分な担当者を持っているときに答えとupvoteを受け入れることができます。 –