SQLを学んでください:マイクロソフトSQL Server



私たちの指定された基準に基づいてデータベースから結果を絞り込む信じられない方法はどこにありますか.しかし、我々はパターンに基づいてレコードを選択したい場合はどうですか?
この場合、WHERE句のような演算子を使用できます.


ライク演算子
ここで、同様の演算子は、パターンに一致することができます.
構文は以下の通りです.
Select [Column Names | *]
Where [Column Name] Like [Criteria]
我々はまた、追加のオプションを追加することができます.
Select [Column Names | *]
Where [Column Name] Like [Criteria]
AND | OR [Column Name] [Operator] [Criteria]
我々は、SSMの中でこれを見ることができます.

新しいクエリで始めましょう.ドロップダウンメニューでAdventureWorksデータベースが選択されていることを確認し、さもなければ、クエリステートメントは期待通りに動作しません.
今回は、人の代わりに、以前よりも違うテーブルを使います.個人表、我々は生産を使用されます.製品表.

どのような種類のレコードが私たちに生産されているかを見てみましょう.製品表.我々は、このテーブルからすべてのデータを取得するには、単純な選択すべてを使用することができます.

このテーブルの結果セットを予想通りに取得します.しかし、私たちは手紙Aから始まるすべての製品を見たいと言いましょう.この場合、私たちは類似した声明を使用することができます.

この句は、WHERE句とA句の列名を指定することによって構成します.
しかし、我々はまた、我々はワイルドカードに入れてこれを行うには、後に続くすべての単語に一致したい.ワイルドカードは何にマッチします.どのように見えるかは以下の通りです.
例えば
Select *
Where name Like 'A%'
%はワイルドカード文字で、それはaの後のすべてにマッチします.


例えば、Aで終わったすべての商品名を見つけたいならば、私たちは% signを前面とAに戻すことができます.

私たちは、その中に単語'塗料'を持っている製品名を見つけたい場合は、我々はどこに製品名'塗料'には気にしないでください.

我々は、我々の基準の開始時と我々の基準の終わりにワイルドカードを追加することによってこれを行うことができます.

これは、たとえ何のパラグラフ語が始まっても、それが何で終わるかに関係なく、それには「塗料」という言葉があるはずです.

Remember the query window is case-incensitive




WHERE句の多値
列からWHERE句と指定値を使用して、テーブルから値を選択する方法について議論しました.
たとえば、IDが123のテーブルの値を選択したい場合.
Select *
From [Table Name]
Where ID = 123
IDが123または234である値を選択したいなら、以下のように構成します.
Select *
From [Table Name]
Where ID = 123
Or ID = 234
複数の文を追加する必要がある場合や、文を指定する必要があります.

これは一般的に値の限られた量、2つまたは多分10の値を持っている状況では、罰金です.しかし、私たちがIDの値の数百人を持っている場合、それは管理するために厄介になり、SQLが読んで理解しにくくなります.
これは別のSQL句が登場するところです.INクエリ文を使用するための構文は、我々が使用しているものに似ていて簡単です.
Select [Column Names | *]
From [Table Name]
Where ID in (criteria, criteria, criteria...)
例えば、
Select [Column Names | *]
From [Table Name]
Where ID in (123, 434, 234, 233, 112, 431, 332...)
我々は条件を括弧で囲み、コンマで区切っている.我々は、これがSSMの中で実際にどのように働くかについて見ることができます.

私たちは人を使うつもりです.人のテーブルを悪魔状態に.
我々は販売部門から値を与えられたと仮定し、彼らは人々の特定のグループの最初の名前と最後の名前を知っていた.彼らが提供した値はIDです.
この種の問合せを実行する面倒な方法は以下の通りです.

我々が議論したように、Inクエリメソッドを使用して同じクエリを実行できます.

両方のクエリを同時に実行すると、同じ結果セットが返されます.

たとえば、あなたがスティング値を使用しなければならないならば、あなたは1つの引用で彼らを囲む必要があります.たとえば、firstNameの値を見つける必要があります.クエリ文を次のように構築します.

日付の値を使用する場合は、単一引用符を使用します.

それはthats!これを行うにはうまくやって、我々はどこに我々の結果セットをどこまでも絞り込むことができる方法を見てきたので、私はこの記事が好き願っています.また今度は.