當前位置:首頁 » 編程語言 » sql語句中通符有哪些
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql語句中通符有哪些

發布時間: 2022-06-02 17:42:36

sql資料庫語句大全

SQL資料庫語句大全:

1、選擇:select * from table1 where 范圍

2、插入:insert into table1(field1,field2) values(value1,value2)

3、刪除:delete from table1 where 范圍

4、更新:update table1 set field1=value1 where 范圍

5、排序:select * from table1 order by field1,field2 [desc]

6、總數:select count as totalcount from table1

7、求和:select sum(field1) as sumvalue from table1

⑵ sql中通配符

這是通配符%是可以代替多個任意字元
_只可以代替一個任意字元
你之所以不能插進去的原因是INSERT INTO 只能插特定的字元不能模糊插入,如果想要把這兩個字元插進去,就必須只用ESCAPE關鍵字,建議看一下通配符與ESCAPE的用法

⑶ SQL語句中包含哪兩類通配符進行字元串查詢

% 和_ 是通配符,%代表一個或多個字元, _代表一個字元
select* from 表名 where 欄位 like '%a'----查詢以a結束的信息
select* from 表名 where 欄位 like '_a'----查詢以a結束的2個字元的信息
select* from 表名 where 欄位 like '%[abc]'----查詢以 a或者b或者c 結束的信息
select* from 表名 where 欄位 like '%[^a]'----查詢不以 a 結束的信息

⑷ sql語句中通配符有幾種

SQL語句中通配符有四種,分別是百分號%、下劃線_、方括弧[ ]、方括弧[!](或[^])。

在搜索資料庫中的數據時,SQL 通配符可以替代一個或多個字元。SQL 通配符必須與 LIKE 運算符一起使用。

1、百分號%:可匹配任意類型和長度的字元,如果是中文,請使用兩個百分號即%%。

2、下劃線_:匹配單個任意字元,它常用來限製表達式的字元長度。

3、方括弧[ ]:指定一個字元、字元串或范圍,要求所匹配對象為它們中的任一個。

方括弧[^]或者[!]:其取值也[ ]相同,但它要求所匹配對象為指定字元以外的任一個字元。

(4)sql語句中通符有哪些擴展閱讀:

SQL通配符是使用用特殊字元或語法拼寫,用來執行模糊搜索指令的語句功能。在搜索資料庫中的數據時,SQL 通配符可以替代一個或多個字元。

SQL 通配符必須與 LIKE 運算符一起使用。如在數據中搜索以大寫「A」字母開頭的字元類型數據,可以使用like "A%"。

下劃線和百分號在sql模糊查詢like語句中為特殊字元,分別可匹配1個字元和0到多個字元,如果需要真正查詢特殊字元得轉義,如like 'a\_b%' escape '',將匹配前3個字元為a_b的所有記錄。

參考資料來源:網路-SQL通配符

⑸ 資料庫中常用的sql語句有哪些

1.檢索數據
SELECT prod_nameFROM Procts;
#檢索單列

SELECT prod_id, prod_name, prod_priceFROMProcts;
#檢索多列

SELECT * FROM Procts;
#檢索所有列

SELECT DISTINCTvend_id FROMProcts;
#檢索不同的值

SELECTprod_name FROM Procts LIMIT 5;
#返回不超過5行數據

SELECTprod_name FROM Procts LIMIT 5 OFFSET 5;
#返回從第5行起的5行數據。LIMIT指定返回的行數,LIMIT帶的OFFSET指定從哪兒開始。
2.排序檢索數據
SELECTprod_name
FROMProcts
ORDER BYprod_name;
#排序數據

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_price, prod_name;
#按多個列排序

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY 2, 3;
#按列位置排序,第三行表示先按prod_price, 再按prod_name進行排序

SELECT prod_id, prod_price, prod_name
FROMProcts
ORDER BY prod_priceDESC, prod_name;
#prod_price列以降序排序,而prod_name列(在每個價格內)仍然按標準的升序排序

3.過濾數據
SELECT prod_name, prod_price
FROMProcts
WHERE prod_price< 10;
#檢查單個值

SELECT prod_name, prod_price
FROMProcts
WHERE vend_id <> 『DLL01』;
#不匹配檢查

SELECT prod_name, prod_price
FROMProcts
WHERE prod_priceBETWEEN 5 AND 10;
#范圍值檢查

SELECT cust_name
FROMCUSTOMERS
WHERE cust_emailIS NULL;
#空值檢查

4.高級數據過濾
SELECTprod_id, prod_price, prod_name
FROMProcts
WHERE vend_id = 『DLL01』ANDprod_price <= 4;
#AND操作符

SELECTprod_name, prod_price
FROMProcts
WHEREvend_id=』DLL01』 OR vend_id=』BRS01』;
#OR操作符

SELECTprod_name, prod_price
FROMProcts
WHERE (vend_id = 』DLL01』ORvend_id=』BRS01』)
ANDprod_price >= 10;
#求值順序 AND的優先順序高於OR

SELECTprod_name, prod_price
FROMProcts
WHERE vend_idIN (『DLL01』,』BRS01』)
ORDER BY prod_name;
#IN操作符

SELECT prod_name
FROMProcts
WHERE NOTvend_id = 『DLL01』
ORDER BY prod_name;
#NOT 操作符

SELECT prod_name
FROMProcts
WHEREvend_id <> 『DLL01』
ORDER BY prod_name;
#NOT 操作符

⑹ SQL資料庫常用語法都有哪些

掌握SQL四條最基本的數據操作語句:Insert,Select,Update和Delete。

練掌握SQL是資料庫用戶的寶貴財 富。在本文中,我們將引導你掌握四條最基本的數據操作語句—SQL的核心功能—來依次介紹比較操作符、選擇斷言以及三值邏輯。當你完成這些學習後,顯然你已經開始算是精通SQL了。

在我們開始之前,先使用CREATE TABLE語句來創建一個表(如圖1所示)。DDL語句對資料庫對象如表、列和視進行定義。它們並不對表中的行進行處理,這是因為DDL語句並不處理資料庫中實際的數據。這些工作由另一類SQL語句—數據操作語言(DML)語句進行處理。

SQL中有四種基本的DML操作:INSERT,SELECT,UPDATE和DELETE。由於這是大多數SQL用戶經常用到的,我們有必要在此對它們進行一一說明。在圖1中我們給出了一個名為EMPLOYEES的表。其中的每一行對應一個特定的雇員記錄。請熟悉這張表,我們在後面的例子中將要用到它。

INSERT語句

用戶可以用INSERT語句將一行記錄插入到指定的一個表中。例如,要將雇員John Smith的記錄插入到本例的表中,可以使用如下語句:

INSERT INTO EMPLOYEES VALUES

('Smith','John','1980-06-10',

'Los Angles',16,45000);

通過這樣的INSERT語句,系統將試著將這些值填入到相應的列中。這些列按照我們創建表時定義的順序排列。在本例中,第一個值「Smith」將填到第一個列LAST_NAME中;第二個值「John」將填到第二列FIRST_NAME中……以此類推。

我們說過系統會「試著」將值填入,除了執行規則之外它還要進行類型檢查。如果類型不符(如將一個字元串填入到類型為數字的列中),系統將拒絕這一次操作並返回一個錯誤信息。

如果SQL拒絕了你所填入的一列值,語句中其他各列的值也不會填入。這是因為SQL提供對事務的支持。一次事務將資料庫從一種一致性轉移到另一種一致性。如果事務的某一部分失敗,則整個事務都會失敗,系統將會被恢復(或稱之為回退)到此事務之前的狀態。

回到原來的INSERT的例子,請注意所有的整形十進制數都不需要用單引號引起來,而字元串和日期類型的值都要用單引號來區別。為了增加可讀性而在數字間插入逗號將會引起錯誤。記住,在SQL中逗號是元素的分隔符。

同樣要注意輸入文字值時要使用單引號。雙引號用來封裝限界標識符。

對於日期類型,我們必須使用SQL標准日期格式(yyyy-mm-dd),但是在系統中可以進行定義,以接受其他的格式。當然,2000年臨近,請你最好還是使用四位來表示年份。

既然你已經理解了INSERT語句是怎樣工作的了,讓我們轉到EMPLOYEES表中的其他部分:

INSERT INTO EMPLOYEES VALUES

('Bunyan','Paul','1970-07-04',

'Boston',12,70000);

INSERT INTO EMPLOYEES VALUES

('John','Adams','1992-01-21',

'Boston',20,100000);

INSERT INTO EMPLOYEES VALUES

('Smith','Pocahontas','1976-04-06',

'Los Angles',12,100000);

INSERT INTO EMPLOYEES VALUES

('Smith','Bessie','1940-05-02',

'Boston',5,200000);

INSERT INTO EMPLOYEES VALUES

('Jones','Davy','1970-10-10',

'Boston',8,45000);

INSERT INTO EMPLOYEES VALUES

('Jones','Indiana','1992-02-01',

'Chicago',NULL,NULL);

在最後一項中,我們不知道Jones先生的工薪級別和年薪,所以我們輸入NULL(不要引號)。NULL是SQL中的一種特殊情況,我們以後將進行詳細的討論。現在我們只需認為NULL表示一種未知的值。

有時,像我們剛才所討論的情況,我們可能希望對某一些而不是全部的列進行賦值。除了對要省略的列輸入NULL外,還可以採用另外一種INSERT語句,如下:

INSERT INTO EMPLOYEES(

FIRST_NAME, LAST_NAME,

HIRE_DATE, BRANCH_OFFICE)

VALUE(

'Indiana','Jones',

'1992-02-01','Indianapolis');

這樣,我們先在表名之後列出一系列列名。未列出的列中將自動填入預設值,如果沒有設置預設值則填入NULL。請注意我們改變了列的順序,而值的順序要對應新的列的順序。如果該語句中省略了FIRST_NAME和LAST_NAME項(這兩項規定不能為空),SQL操作將失敗。

讓我們來看一看上述INSERT語句的語法圖:

INSERT INTO table

[(column { ,column})]

VALUES

(columnvalue [{,columnvalue}]);

和前一篇文章中一樣,我們用方括弧來表示可選項,大括弧表示可以重復任意次數的項(不能在實際的SQL語句中使用這些特殊字元)。VALUE子句和可選的列名列表中必須使用圓括弧。

SELECT語句

SELECT語句可以從一個或多個表中選取特定的行和列。因為查詢和檢索數據是資料庫管理中最重要的功能,所以SELECT語句在SQL中是工作量最大的部分。實際上,僅僅是訪問資料庫來分析數據並生成報表的人可以對其他SQL語句一竅不通。

SELECT語句的結果通常是生成另外一個表。在執行過程中系統根據用戶的標准從資料庫中選出匹配的行和列,並將結果放到臨時的表中。在直接SQL(direct SQL)中,它將結果顯示在終端的顯示屏上,或者將結果送到列印機或文件中。也可以結合其他SQL語句來將結果放到一個已知名稱的表中。

SELECT語句功能強大。雖然表面上看來它只用來完成本文第一部分中提到的關系代數運算「選擇」(或稱「限制」),但實際上它也可以完成其他兩種關系運算—「投影」和「連接」,SELECT語句還可以完成聚合計算並對數據進行排序。

SELECT語句最簡單的語法如下:

SELECT columns FROM tables;

當我們以這種形式執行一條SELECT語句時,系統返回由所選擇的列以及用戶選擇的表中所有指定的行組成的一個結果表。這就是實現關系投影運算的一個形式。

讓我們看一下使用圖1中EMPLOYEES表的一些例子(這個表是我們以後所有SELECT語句實例都要使用的。而我們在圖2和圖3中給出了查詢的實際結果。我們將在其他的例子中使用這些結果)。

假設你想查看雇員工作部門的列表。那下面就是你所需要編寫的SQL查詢:

SELECT BRANCH_OFFICE FROM EMPLOYEES;

以上SELECT語句的執行將產生如圖2中表2所示的結果。

由於我們在SELECT語句中只指定了一個列,所以我們的結果表中也只有一個列。注意結果表中具有重復的行,這是因為有多個雇員在同一部門工作(記住SQL從所選的所有行中將值返回)。要消除結果中的重復行,只要在SELECT語句中加上DISTINCT子句:

SELECT DISTINCT BRANCH_OFFICE

FROM EMPLOYEES;

這次查詢的結果如表3所示。

現在已經消除了重復的行,但結果並不是按照順序排列的。如果你希望以字母表順序將結果列出又該怎麼做呢?只要使用ORDER BY子句就可以按照升序或降序來排列結果:

SELECT DISTINCT BRANCH_OFFICE

FROM EMPLOYEES

ORDER BY BRANCH_OFFICE ASC;

這一查詢的結果如表4所示。請注意在ORDER BY之後是如何放置列名BRANCH _OFFICE的,這就是我們想要對其進行排序的列。為什麼即使是結果表中只有一個列時我們也必須指出列名呢?這是因為我們還能夠按照表中其他列進行排序,即使它們並不顯示出來。列名BRANCH_ OFFICE之後的關鍵字ASC表示按照升序排列。如果你希望以降序排列,那麼可以用關鍵字DESC。

同樣我們應該指出ORDER BY子句只將臨時表中的結果進行排序;並不影響原來的表。

假設我們希望得到按部門排序並從工資最高的雇員到工資最低的雇員排列的列表。除了工資括弧中的內容,我們還希望看到按照聘用時間從最近聘用的雇員開始列出的列表。以下是你將要用到的語句:

SELECT BRANCH_OFFICE,FIRST_NAME,

LAST_NAME,SALARY,HIRE_DATE

FROM EMPLOYEES

ORDER BY SALARY DESC,

HIRE_DATE DESC;

這里我們進行了多列的選擇和排序。排序的優先順序由語句中的列名順序所決定。SQL將先對列出的第一個列進行排序。如果在第一個列中出現了重復的行時,這些行將被按照第二列進行排序,如果在第二列中又出現了重復的行時,這些行又將被按照第三列進行排序……如此類推。這次查詢的結果如表5所示。

將一個很長的表中的所有列名寫出來是一件相當麻煩的事,所以SQL允許在選擇表中所有的列時使用*號:

SELECT * FROM EMPLOYEES;

這次查詢返回整個EMPLOYEES表,如表1所示。

下面我們對開始時給出的SELECT語句的語法進行一下更新(豎直線表示一個可選項,允許在其中選擇一項。):

SELECT [DISTINCT]

(column [{, columns}])| *

FROM table [ {, table}]

[ORDER BY column [ASC] | DESC

[ {, column [ASC] | DESC }]];

定義選擇標准

在我們目前所介紹的SELECT語句中,我們對結果表中的列作出了選擇但返回的是表中所有的行。讓我們看一下如何對SELECT語句進行限制使得它只返回希望得到的行:

SELECT columns FROM tables [WHERE predicates];

WHERE子句對條件進行了設置,只有滿足條件的行才被包括到結果表中。這些條件由斷言(predicate)進行指定(斷言指出了關於某件事情的一種可能的事實)。如果該斷言對於某個給定的行成立,該行將被包括到結果表中,否則該行被忽略。在SQL語句中斷言通常通過比較來表示。例如,假如你需要查詢所有姓為Jones的職員,則可以使用以下SELECT語句:

SELECT * FROM EMPLOYEES

WHERE LAST_NAME = 'Jones';

LAST_NAME = 'Jones'部分就是斷言。在執行該語句時,SQL將每一行的LAST_NAME列與「Jones」進行比較。如果某一職員的姓為「Jones」,即斷言成立,該職員的信息將被包括到結果表中(見表6)。

使用最多的六種比較

我們上例中的斷言包括一種基於「等值」的比較(LAST_NAME = 'Jones'),但是SQL斷言還可以包含其他幾種類型的比較。其中最常用的為:

等於 =

不等於 <>

小於 <

大於 >

小於或等於 <=

大於或等於 >=

下面給出了不是基於等值比較的一個例子:

SELECT * FROM EMPLOYEES

WHERE SALARY > 50000;

⑺ sql語句中字元串的連接符是什麼

不同的資料庫中字元串連接符不同,下面列舉幾種資料庫的連接符:
1、oracle資料庫中的連接符為||,例如連接字元串AB、CD可以使用「AB」||「CD」;
2、SQL SERVER 資料庫連接符為+,例如連接字元串AB、CD可以使用「AB」+「CD」;

⑻ SQL中的符號^,!,$,#,&,各表示什麼意思

^(位異或)
對兩個整數值執行「位異或」運算。它會將第一個操作數的每一位與第二個操作數中對應的每一位進行比較。如果一位是 0,另一對應位是 1,則相應結果位設置為
1。如果兩位都是 0 或兩位都是 1,則相應結果位設置為 0。

兩個條件必須都為有符號的整數數據類型,或都為無符號的整數數據類型。

!(邏輯非)! 運算符不能與其他運算符一起使用。例如,不能將 ! 和 > 運算符組合為 !>. 運算符。

&(位與)
對兩個整數值執行「位與」運算。它會將第一個操作數的每一位與第二個操作數中對應的每一位進行比較。如果兩位都是 1,則相應的結果位設置為
1。否則,相應的結果位設置為 0。

兩個條件都必須是有符號整數類型,或者都必須是無符號整數類型。

$,# 這兩個沒有實際含義