【SQL Server】SELECT 句 と WHERE 句 を用いた検索

SQL Server
この記事は約3分で読めます。

【SQL Server】SELECT 句 と WHERE 句 を用いた検索

テーブルから検索条件を指定してレコードを取得する方法の説明です。クエリの基本になります。

基本構文

SELECT カラム名 FROM テーブル名
WHERE 条件

 

内容

テーブルから検索条件を指定してレコードを取得するには WHERE 句を使います。
WHERE 句 を付けることによって説明を後ろから追加します。

事前準備としてテーブルを作成します。

CREATE TABLE [dbo].[T1](
	[Id] INT  ,
	[Name] NVARCHAR(20) ,
	[Birth] INT ,
	[Death] INT ,
	[Gender] CHAR(2) ,
)


INSERT INTO T1(Id,Name,Birth,Death,Gender) VALUES
(1,'芥川龍之介',1892 ,1927,'男'),
(2,'阿部公房',1924 ,1993,'男'),
(3,'有島武郎',1878 ,1923,'男'),
(4,'江戸川乱歩',1894 ,1965,'男'),
(5,'川端康成',1899  ,1972,'男'),
(6,'菊池寛',1888 ,1948,'男'),
(7,'司馬遼太',1923  ,1996,'男'),
(8,'太宰治',1909  ,1948,'男'),
(9,'樋口一葉',1872  ,1896,'女')

 

単一の条件を指定

性別が’女’のみ取得場合比較演算子 = を使います。

SELECT * FROM T1
WHERE Gender = '女'
Id Name Birth Death Gender
9 樋口一葉 1872 1896

 

範囲を指定

生れた年が1900年以降のみ取得する場合比較演算子 <= を使います。

SELECT * FROM T1
WHERE 1900 <= Birth
Id Name Birth Death Gender
2 阿部公房 1924 1993
7 司馬遼太 1923 1996
8 太宰治 1909 1948

 

その他の比較用の演算子

  • = B(A と B が等しい)
  • <> B(A と B が等しくない。※標準)
  • != B(A と B が等しくない。T-SQL)
  • > B(A より B が小さい)
  • < B(A より B が大きい)
  • >= B(A が B 以上)
  • <= B(A が B 以下)

※「A >= 1900」 と 「1900 <= A」は意味は同じですが、出来れば左側が小さくなるようにした方が、後でクエリを見た時にわかりやすいです。

コメント

タイトルとURLをコピーしました