1. sql運算符解釋
這些符號一般都是查詢語句里邊使用的。比如比較運算符: (表student結構:sname sage
查詢student表中所有年齡在19歲以下的學生姓名及年齡。 張三 17
Select Sname, Sage 李四 18
From student 王五 20
Where Sage < 19
這些都是一些查詢語句時的條件。以前我學的課本上都有詳細的解釋。你是自學么?
2. sql *=運算符什麼意思
FROM子句
對於每個SELECT子句,FROM子句是強制性的。FROM子句主要用來指定檢索數據的來源,數據的來源可以是若干個表或視圖,數據表之間或視圖名之間用逗號分隔。下面是FROM子句的語法:
[ FROM { < table_source > } [ ,...n ] ]
< table_source > ::=
table_name [ [ AS ] table_alias ] [ WITH ( < table_hint > [ ,...n ] ) ]
| view_name [ [ AS ] table_alias ] [ WITH ( < view_hint > [ ,...n ] ) ]
| rowset_function [ [ AS ] table_alias ]
| user_defined_function [ [ AS ] table_alias ]
| derived_table [ AS ] table_alias [ ( column_alias [ ,...n ] ) ]
| < joined_table >
< joined_table > ::=
< table_source > < join_type > < table_source > ON < search_condition >
| < table_source > CROSS JOIN < table_source >
| [ ( ] < joined_table > [ ) ]
< join_type > ::=
[ INNER | { { LEFT | RIGHT | FULL } [OUTER] } ]
[ < join_hint > ]
JOIN
FULL [OUTER]:指定在結果集中包含左表或右表中不滿足連接條件的行,並將對應於另一個表的輸出列設為NULL。這是對通常由INNER JOIN返回的所有行的補充。說明按此處指定的方法指定外連接或在WHERE子句中使用舊式非標準的 *= 和 =* 運算符都是可行的。不能在同一語句中同時使用這兩種方法。
3. SQl查詢中集合的並運算符是:
http://tech.sina.com.cn/roll/2006-10-01/1441116751.shtml
UNION、EXCEPT 以及 INTERSECT 集合運算符使您能夠將兩個或更多外層查詢組合成單個查詢。執行用這些集合運算符連接的每個查詢並組合各個查詢的結果。根據運算符不同,產生不同的結果。
2、UNION 運算符
UNION 運算符通過組合其他兩個結果表(例如 TABLE1 和 TABLE2)並消去表中任何重復行而派生出一個結果表。當 ALL 隨 UNION 一起使用時(即 UNION ALL),不消除重復行。兩種情況下,派生表的每一行不是來自 TABLE1 就是來自 TABLE2。
在下列 UNION 運算符的示例中,查詢返回薪水高於 $21,000、有管理責任且工齡少於 8 年的人員的姓名:
(1)
SELECT ID, NAME FROM STAFF WHERE SALARY > 21000
UNION
(2)
SELECT ID, NAME FROM STAFF WHERE JOB='Mgr' AND YEARS < 8
ORDER BY ID
各個查詢的結果如下:
(1)
(2)
資料庫管理程序組合這兩個查詢的結果,消除重復行,並按升序返回最終結果。
如果在帶有任何集合運算符的查詢中使用 ORDER BY 子句,則必須在最後一個查詢之後寫該子句。系統對組合的回答集進行排序。如果兩個表中的列名不同,則組合的結果表沒有相應列的名稱。替代地,將這些列按其出現的順序編號。因此,如果想要對結果表進行排序,則必須在 ORDER BY 子句中指定列號。
3、EXCEPT 運算符
EXCEPT 運算符通過包括所有在 TABLE1 中但不在 TABLE2 中的行並消除所有重復行而派生出一個結果表。當 ALL 隨 EXCEPT 一起使用時 (EXCEPT ALL),不消除重復行。
在下列 EXCEPT 運算符的示例中,查詢返回收入超過 $21,000 但沒有經理職位且工齡為 8 年或更長的所有人員的姓名。
SELECT ID, NAME FROM STAFF WHERE SALARY > 21000
EXCEPT
SELECT ID, NAME FROM STAFF WHERE JOB='Mgr' AND YEARS < 8
各個查詢的結果在關於 UNION 的一節中列出。上面的語句產生下列結果:
4、INTERSECT 運算符
INTERSECT 運算符通過只包括 TABLE1 和 TABLE2 中都有的行並消除所有重復行而派生出一個結果表。當 ALL 隨 INTERSECT 一起使用時 (INTERSECT ALL),不消除重復行。
在下列 INTERSECT 運算符的示例中,查詢返回收入超過 $21,000 有管理責任且工齡少於8年的雇員的姓名和 ID。
SELECT ID, NAME FROM STAFF WHERE SALARY > 21000
INTERSECT
SELECT ID, NAME FROM STAFF WHERE JOB='Mgr' AND YEARS < 8
各個查詢的結果在關於 UNION 的一節中列出。這兩個使用 INTERSECT 的查詢的結果為:
5、當使用 UNION、EXCEPT 以及 INTERSECT 運算符時,記住下列事項:
運算符的查詢選擇列表中的所有對應項必須是相容的。有關更多信息,參見 SQL Reference 中的數據類型相容性表。
ORDER BY 子句(如果使用該子句的話)必須放在最後一個帶有集合運算符的查詢後面。對於每個運算符來說,如果列的名稱與查詢的選擇列表中對應項的名稱相同,則該列名只能在 ORDER BY 子句中使用。
在具有相同數據類型和相同長度的列之間進行的運算會產生一個具有該類型和長度的列。針對 UNION、EXCEPT 以及 INTERSECT 集合運算符的結果,參見 SQL Reference 中結果數據類型的規則。
4. 這條SQL語句運算符
SELECT (case when (endtime-dispatchtime) <=3 then 1 else 0 end) tt FROM t_info_main
這樣改,運算的時候別用別名
5. 在sql中、= 是什麼是賦值運算符還是比較運算符
在sql中:
當查詢條件是比較運算符
select *from test where name='A';
查詢出name 等於的A的所有數據
當結果,在下面情況是更改賦值
select name='a' from test
把name 欄位的內容更改成a
6. SQL運算符。。。。。
如果是想瞭解運算符就上網路上搜,文庫里都有,很全
7. sql中有沒有按位與運算符
當然有啊
1.&(位與)
上下運算,按照與的運算規則:0&0=0 ;0&1=0;1&1=1
例如:
170 & 75 結果為:0000 0000 0000 1010
再把二進制轉換為十進制:10
2.~(位非)
運演算法則:0變1,1變0
~170 的二進制:1111 1111 0101 0101 十進制為:-171
~75 的二進制:1111 1111 1011 0100 十進制為:-76
3.|(位或)
上下運算,按照與的運算規則:0&0=0 ;0&1=1;1&1=1
例如:
170 & 75 結果為:0000 0000 1110 1011
再把二進制轉換為十進制:235
4.^(位異或)
上下運算,按照與的運算規則:0&0=0 ;0&1=1;1&1=0
例如:
170 & 75 結果為:0000 0000 1110 0001
再把二進制轉換為十進制:225
位移
「<<」用法:
格式是:a<<m,a和m必須是整型表達式,要求m>=0。
功能:將整型數a按二進制位向左移動m位,高位移出後,低位補0。
「>>」用法:
格式是:a>>m,a和m必須是整型表達式,要求m>=0。
功能:將整型數a按二進制位向右移動m位,低位移出後,高位補0//有符號的數還是要以機器而定.
先左移8位,再右移8位,能把key的高8位清成0
假如key=0100110110010011的話(二進制)
先執行key<<8,key=1001001100000000
再執行key>>8,key=0000000010010011
8. sql位運算符
按位運算符
位運算符在兩個表達式之間執行位操作,這兩個表達式可以為整型數據類型分類中的任何數據類型。
運算符含義
&(按位 AND) 按位 AND(兩個操作數)。
|(按位 OR) 按位 OR(兩個操作數)。
^(按位互斥 OR) 按位互斥 OR(兩個操作數)。
位運算符的操作數可以是整型或二進制字元串數據類型分類中的任何數據類型(但 image 數據類型除外),此外,兩個操作數不能同時是二進制字元串數據類型分類中的某種數據類型。下表顯示所支持的操作數數據類型。
左邊操作數 右邊操作數
binary int、smallint 或 tinyint
bit int、smallint、tinyint 或 bit
int int、smallint、tinyint、binary 或 varbinary
smallint int、smallint、tinyint、binary 或 varbinary
tinyint int、smallint、tinyint、binary 或 varbinary
varbinary int、smallint 或 tinyint
SELECT 3 & 9
結果為1
3的二進制:00000011
9的二進制:00001001
按位進行AND操作時,只有第1位上兩者都是1,其它位都有一個為0,所以結果為二進制的0001
SELECT 3 | 9
結果為11
按位進行OR操作時,可以認為就是加法運算
SELECT 3 ^ 9
結果為10
3的二進制:00000011
9的二進制:00001001
按位進行異或操作時,只有位上兩者不相同(1與0)結果才會是1,如果相同(1與1或0與0)則為0,在這里第一位上都是1,結果為0;第三位上都是0,結果為1;其它為1;所以結果為二進制的1010,也就是十進制的10