2012-04-04 8 views
0

こんにちは、私はデータベースでクエリを実行しようとしていますが、このエラーが発生しています。クエリでのSqlエラー#1064

SELECT * 
FROM `data` 
WHERE `Category` LIKE '%beauty%' and not in (SELECT * 
FROM `data` 
WHERE `Category` LIKE 'beauty%') 

ありがとう

+1

...と 'Category' NOT IN(SELEでなければなりません...「のデータが」1列のみが含まれている場合にのみ動作します –

答えて

2

問題は、この地域にある:

なく

にcorect構文はあなたがどこにサブクエリを行うことはできません

and not <field name> in (Select <INDIVIDUAL FIELD> from ...) 

ですすべてのcoumnsを選択している節(*)サブクエリー内の個々の列を1つ選択し、それを1つに結合する必要がありますあなたのメインクエリの列。

だから、完全な文では、それがIN文でサブクエリを使用する方法の詳細情報についてはIMO

もっとたくさん読みやすい

SELECT * 
FROM `data` 
WHERE `Category` LIKE '%beauty%' and `Category` NOT LIKE 'beauty%' 

と同等だ

SELECT * 
FROM `data` 
WHERE `Category` LIKE '%beauty%' and `Category` not in (SELECT Category 
FROM `data` 
WHERE `Category` LIKE 'beauty%') 

のようなものでなければなりませんWHERE句では、http://beginner-sql-tutorial.com/sql-subquery.htm

を参照してください。下にスクロールして、記事の「相関サブクエリ」を見つけます。あなたがここにサブクエリを必要とするのはなぜ

SELECT * 
FROM  `data` 
WHERE `Category` LIKE '%beauty%' 
AND  `Category` NOT LIKE 'beauty%' 
+0

"と'カテゴリー 'NOT'カテゴリー 'LIKE '美容%'は"とするべきです "カテゴリー'は美人ではありません " –

+0

@マクシミリアンマイヤー - ありがとうございます! – David

+0

Thnx。それは愚かな前にテーブルを切り捨てる前に役立つでしょう:)ああ、私は少なくともダンプを持っています。 – Evan

1
SELECT * 
FROM `data` 
WHERE `Category` LIKE '%beauty%' and `Category` not in 
    (SELECT `Category` 
    FROM `data` 
    WHERE `Category` LIKE 'beauty%') 
+0

。それでもほとんどのツールは中*使用時に尻込みします – David

+0

@DavidStrattonグッドキャッチ。 –

0
SELECT * FROM `data` 
WHERE `Category` LIKE '%beauty%' 
and `Category` not in (SELECT * 
         FROM `data` 
         WHERE `Category` LIKE 'beauty%') 
0

...とCategory

SELECT * 
FROM `data` 
WHERE `Category` LIKE '%beauty%' and `Category` not in (SELECT * 
FROM `data` 
WHERE `Category` LIKE 'beauty%') 
1

私はあなたのクエリは次のようになりますだと思う:とにかく

SELECT * 
FROM  `data` 
WHERE `Category` LIKE '%beauty%' 
AND  `Category` NOT IN 
(
    SELECT `Category` 
    FROM  `data` 
    WHERE `Category` LIKE 'beauty%' 
) 

、私はにクエリを書き直すでしょうか?これはあなたのクエリ

SELECT * 
FROM `data` 
WHERE `Category` LIKE '%beauty%' and `Category` not LIKE 'beauty%'