サーチ…
構文
- SELECT [すべて| DISTINCT] select_expr、select_expr、select_expr、...。
- FROM table_reference
- [WHERE where_condition]
- [GROUP BY col_list]
- [条件付き]
- [ORDER BY col_list]
- [LIMIT n]
すべての行を選択
SELECT
は、テーブルからデータの行を取り出すために使用されます。取得する列を指定できます。
SELECT Name, Position
FROM Employees;
または、*を使用してすべての列を取得するだけです。
SELECT *
FROM Employees;
特定の行を選択
このクエリは、列amount
値が10より大きい「 sales
テーブルのすべての列と、「US」のregion
列のデータを返します。
SELECT * FROM sales WHERE amount > 10 AND region = "US"
正規表現を使用して、取得する列を選択することができます。次のステートメントは、列name
と接頭辞address
始まるすべての列からデータを取得しaddress
。
SELECT name, address.* FROM Employees
キーワードLIKE
(文字 '%'と組み合わされた)を使用して、特定の部分文字列で始まる文字列またはその部分文字列で終わる文字列を照合することもできます。次のクエリは、列city
が「新規」で始まるすべての行を返します。
SELECT name, city FROM Employees WHERE city LIKE 'New%'
RLIKE
キーワードを使用すると、Javaの正規表現を使用できます。次のクエリは、列name
に "smith"または "son"という単語が含まれている行を返します。
SELECT name, address FROM Employee WHERE name RLIKE '.*(smith|son).*'
返されたデータに関数を適用することができます。次の文はすべての名前を大文字で返します。
SELECT upper(name) FROM Employees
さまざまな数学関数 、 コレクション関数 、 型変換関数 、 日付関数 、 条件関数、または文字列関数を使用できます 。
resultに与えられた行の数を制限するために、 LIMIT
キーワードを使用することができます。次の文は10行だけを返します。
SELECT * FROM Employees LIMIT 10
選択:プロジェクトを選択した列
サンプルテーブル(Employee)構造体
列名 | データ・タイプ |
---|---|
ID | INT |
F_Name | STRING |
L_Name | STRING |
電話 | STRING |
住所 | STRING |
すべての列を投影する
ワイルドカード*
を使用してすべての列を投影します。例えば
Select * from Employee
プロジェクトを選択した列(ID、名前など)
投影リストの列の名前を使用します。例えば
Select ID, Name from Employee
プロジェクションリストから1列を破棄する
1列を除くすべての列を表示します。例えば
Select `(ID)?+.+` from Employee
パターンに一致する列を破棄する
パターンに一致するすべての列を拒否します。 NAME
終わるすべての列を拒否する
Select `(.*NAME$)?+.+` from Employee