この章では、SQLクエリを使ってのデータベースへ問い合わせをする方法を取り上げています。
1. 基本クエリ
全ての従業員に関するデータを得たいと仮定しましょう。 全ての属性に関するデータを取得したいです。
SELECT *
FROM Employee
以下の表が取得出来ます。
{{h}} |
---|
{{r}} |
2. クエリと基本フィルタ
子供が少なくとも1人以上いる全ての従業員の名前、苗字、子供の数に関するデータを取得したいと仮定しましょう。
SELECT First_name, Last_name, Kids_number
FROM Employee
WHERE Kids_number >= 1
以下の表が取得できます。
{{h}} |
---|
{{r}} |
3. クエリとAND条件
子供が少なくとも1人以上いて、名前が「R」で始まる全ての従業員に関するデータを得たいと仮定しましょう。 全ての属性についてのデータを取得したいです。
SELECT *
FROM Employee
WHERE Kids_number >= 1 AND First_name LIKE 'R%'
以下の表が取得できます。
{{h}} |
---|
{{r}} |
4. クエリとOR条件
子供が少なくとも1人以上いるまたは、名前が「D」で始まる全ての従業員に関するデータを取得したいと仮定しましょう。全ての属性についてのデータを取得したいです。
SELECT *
FROM Employee
WHERE Kids_number >= 1 OR First_name LIKE 'D%'
以下の表が取得できます。
{{h}} |
---|
{{r}} |
5. クエリとORとAND条件
子供が少なくとも1人以上いるまたは、名前が「D」で始まる全ての従業員に関するデータを取得したいと仮定しましょう。それに加えて、2014年1月1日から働き始めた従業員だけを取得したいとします。全ての属性に関するデータが欲しいです。
SELECT *
FROM Employee
WHERE (Kids_number >= 1 OR First_name LIKE 'D%') AND Start >= '2014-01-01'
下記の表が取得できます。
{{h}} |
---|
{{r}} |
まとめ
基本のSQLクエリは、
SELECT
, FROM
や WHERE
節を使用します。 SELECT
は、取得したい属性(列)を示します。SELECT
内の*は、全ての属性に関するデータを取得したいことを意味します。FROM
は、表[テーブル]に含まれるデータを示します。最後に、WHERE
は、1つまたはいくつかの条件に合うレコードのみをフィルターします。
IN
は、より簡潔なコードを書くことを許可します。例えば、 ... WHERE Kids_number=1 OR Kids_number=3
は、 ... WHERE Kids_number IN (1,3)
と同等となります。