私は約6つのフィールドを持つテーブルがあります。国のフィールドに "England"を持たないすべてのレコードを返すSQLステートメントを書きたいと思っています。コメントフィールドの言語フィールド&英語に英語を書いています。SQLクエリの質問
SQLクエリはどのようなものでしょうか?
私は約6つのフィールドを持つテーブルがあります。国のフィールドに "England"を持たないすべてのレコードを返すSQLステートメントを書きたいと思っています。コメントフィールドの言語フィールド&英語に英語を書いています。SQLクエリの質問
SQLクエリはどのようなものでしょうか?
これでスタートし、必要に応じて修正します。
SELECT *
FROM SixFieldTable
WHERE Country <> 'England'
AND language <> 'english'
AND comments NOT LIKE '%english%'
は、この情報がお役に立てば幸いです。
ありがとうございます。 ANDキーワードまたはORキーワードを使用すべきかどうかわかりません ORキーワードは何を使用しますか? – Frank
おそらくブール論理の接地が役立つだろう。 http://en.wikipedia.org/wiki/Boolean_logic –
残念ながら、このコメントの要件は次のとおりです。(国名に "England"を含めてはいけません。言語フィールドに "english"を含めてはいけません。コメント欄に英語を入力してください)。大文字の「英語」はどうですか?マイクの答えは、あなたが正確にイングランドの国と言語の英語に一致するようにしたい場合にのみ機能します。国の価値が北イングランドの場合はどうなりますか? –
あなたは 『ない』比較
select * from myTableOfMadness
where country <> 'England'
and language <> 'English'
and comments not like '%english%'
したい「とのか」場合はわからないかの、またはすべてのようなものに欠けています。あなたの文構造はやや誤解を招きます。
あなたの質問は、あなたが使用しているDBMSとあなたのテーブルがどのように見えるかによって大きく異なります。
SELECT *
FROM tbl
WHERE country NOT LIKE '%England%' AND language NOT LIKE '%english%'
AND comments NOT LIKE '%english%';
上記のクエリは、方法だろう、その場合には、あなたの質問は、それは大量のテキストが含まれている可能性があり、これらすべての分野のような音になり方法あなたの単語を、これは一つの方法は、MySQLやTSQLでそれを行うことであろう行く。しかし、より多くのあなたが本当のデータベースに完全一致を探していると思いませんよりも可能性:
SELECT *
FROM tbl
WHERE country!='England' AND language!='english'
AND comments NOT LIKE '%english%';
上記の解決策は、列にNULL値可能性を考慮するためには表示されません。この
Select * From table
Where Country Not Like '%England%'
And Language Not Like '%English%'
And comments Not Like '%English%'
を試してみてください。
Where country <> 'England'
などの既定のSQL Server接続設定では、国がnullのエントリは誤って除外されます。
代わりに、あなたはケースを無視するには
IsNull(Country, '') <> 'England'
を使用して試みることができる:
SELECT *
FROM SixFieldTable
WHERE LOWER(Country) <> 'england' AND
LOWER(language) <> 'english' AND
LOWER(comments) NOT LIKE '%english%'
あなたはそれを持っていないフィールドのいずれかでそれを持っていないレコード、またはレコードを意味しますか3つのフィールドのうちの少なくとも1つ?また、フィールドが指定された文字列と正確に同じであってはならないか、指定された文字列を含んではいけませんか? – Amber
テーブル構造、レイアウト、サンプルデータを転記できますか? –
には、これらの文字列を含めることはできません (countryフィールドに "England"は含まれていてはいけません。言語フィールドに "english"を含めることはできず、commentsフィールドに "english"を含めることはできません) – Frank