SQL: "IN" Function
The IN function helps reduce the need to use multiple OR conditions.
譯:IN函數有助於減少OR條件的復合使用。
The syntax for the IN function is:
譯:IN函數的語法:
SELECT columns
FROM tables
WHERE column1 in (value1, value2, .... value_n);
This SQL statement will return the records where column1 is value1, value2..., or value_n. The IN function can be used in any valid SQL statement - select, insert, update, or delete.
譯:該SQL語句將返回column1的值是value1, value2..., 或者value_n的記錄。IN函數可以用於任何合法的SQL語句中-select, insert, update, or delete。
Example #1
The following is an SQL statement that uses the IN function:
譯:下面是一個使用IN函數的SQL語句
SELECT *
FROM supplier
WHERE supplier_name in ( 'IBM', 'Hewlett Packard', 'Microsoft');
This would return all rows where the supplier_name is either IBM, Hewlett Packard, or Microsoft. Because the * is used in the select, all fields from the supplier table would appear in the result set.
譯:這將返回supplier_name為IBM, Hewlett Packard, 或者 Microsoft的所有記錄。因為在SELECT中使用了*,supplier表中所有的字段都會顯示在結果集中。
It is equivalent to the following statement:
譯:與下面的SQL語句相同:
SELECT *
FROM supplier
WHERE supplier_name = 'IBM'
OR supplier_name = 'Hewlett Packard'
OR supplier_name = 'Microsoft';
As you can see, using the IN function makes the statement easier to read and more efficient.
譯:正如你所看到的,使用IN函數使語句更容易讀並且有更高的執行效率。
Example #2
You can also use the IN function with numeric values.
譯:你也可以同數字使用IN函數
SELECT *
FROM orders
WHERE order_id in (10000, 10001, 10003, 10005);
This SQL statement would return all orders where the order_id is either 10000, 10001, 10003, or 10005.
譯:將返回所有order_id是10000, 10001, 10003, 或者10005的記錄
It is equivalent to the following statement:
譯:與下面的SQL語句相同:
SELECT *
FROM orders
WHERE order_id = 10000
OR order_id = 10001
OR order_id = 10003
OR order_id = 10005;
Example #3 - "NOT IN"
The IN function can also be combined with the NOT operator.
譯:IN函數可以和NOT操作符連用
For example,
SELECT *
FROM supplier
WHERE supplier_name not in ( 'IBM', 'Hewlett Packard', 'Microsoft');
This would return all rows where the supplier_name is neither IBM, Hewlett Packard, or Microsoft. Sometimes, it is more efficient to list the values that you do not want, as opposed to the values that you do want.
譯:這將返回supplier_name不是IBM, Hewlett Packard,及Microsoft的所有記錄。有時,與你想要的數據相反,這樣可以更有效的例出你不需要的值。
如果文章對你用,請支持萬事如意網址導航。
再分享一下我老師大神的人工智能教程吧。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智能的隊伍中來!https://blog.csdn.net/jiangjunshow