99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁大數(shù)據(jù)時代SQL結(jié)構(gòu)化查詢語言分類
SQL結(jié)構(gòu)化查詢語言分類
2020-06-24
收藏

SQL是數(shù)據(jù)分析常用的一種工具,今天跟小編一起來學(xué)習(xí)一下SQL結(jié)構(gòu)化查詢語言都有哪些分類吧。

結(jié)構(gòu)化查詢語言(英語:Structural Query Language,縮寫:SQL),是一種特殊目的之編程語言,用于數(shù)據(jù)庫中的標(biāo)準(zhǔn)數(shù)據(jù)查詢語言,IBM公司最早使用在其開發(fā)的數(shù)據(jù)庫系統(tǒng)中。1986年10月,美國國家標(biāo)準(zhǔn)學(xué)會對SQL進(jìn)行規(guī)范后,以此作為關(guān)系式數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言(ANSI X3. 135-1986),1987年得到國際標(biāo)準(zhǔn)組織的支持下成為國際標(biāo)準(zhǔn)。不過各種通行的數(shù)據(jù)庫系統(tǒng)在其實踐過程中都對SQL規(guī)范作了某些編改和擴(kuò)充。所以,實際上不同數(shù)據(jù)庫系統(tǒng)之間的SQL不能完全相互通用。

SQL分類:

數(shù)據(jù)查詢語言(DQL)

數(shù)據(jù)操縱語言(DML)

事務(wù)控制語言(TCL)

數(shù)據(jù)控制語言(DCL)

數(shù)據(jù)定義語言(DDL)

一、數(shù)據(jù)查詢語言(DQL:Data Query Language):

其語句稱為“數(shù)據(jù)檢索語句”,用以從表中獲得數(shù)據(jù),確定數(shù)據(jù)怎樣在應(yīng)用程序給出。數(shù)據(jù)查詢語言(Data Query Language, DQL)是SQL語言中,負(fù)責(zé)進(jìn)行數(shù)據(jù)查詢而不會對數(shù)據(jù)本身進(jìn)行修改的語句,這是最基本的SQL語句。數(shù)據(jù)查詢語言DQL基本結(jié)構(gòu)是由SELECT子句,F(xiàn)ROM子句,WHERE子句組成的查詢塊:

常規(guī)字段

SELECT <字段名表>

FROM <表或視圖名>

WHERE <查詢條件>

常用字段

SELECT [要提取的字段,或是用"*"代表全部的字段]

FROM [要提取的數(shù)據(jù)來源對象,包含數(shù)據(jù)表,視圖表等] -- 可搭配JOIN做連接。

WHERE [提取的查詢條件] -- WHERE可有可無。

GROUP BY [要做聚合的分組字段] -- GROUP BY在使用聚合指令時必須要有。

HAVING [要做為條件的聚合字段] -- 要使用聚合函數(shù)作為條件時使用

ORDER BY [要排序的字段和方向] -- ORDER BY可有可無,若沒有則是按照查詢引擎的輸出順序為主。

二、 數(shù)據(jù)操作語言(DML:Data Manipulation Language):

其語句包括動詞INSERT,UPDATE和DELETE。它們分別用于添加,修改和刪除表中的行。也稱為動作查詢語言。

insert:向表中插入數(shù)據(jù)

delete:刪除表中的數(shù)據(jù),格式:delete from tableName [where 條件]

update:修改表中的數(shù)據(jù)  格式:update tableName set colName1=value1[,colName2=value2] [where 條件]

where 條件:  對表中的數(shù)據(jù)增加條件進(jìn)行限制,起到過濾的作用。

格式:  where  colName 關(guān)系運算符 value [or|and 條件2]

關(guān)系運算符: >,>=,<,<=,  等于:=,不等于:!= 或 <>

null值操作:比較null時,不能使用=或者!= 或者<>,而是使用 is或者is not,在select子句中,使用關(guān)系運算符

三、事務(wù)控制語言(TCL):

它的語句能確保被DML語句影響的表的所有行及時得以更新。

COMMIT - save work done 提交

SAVEPOINT - identify a point in a transaction to which you can later roll back 保存點

ROLLBACK - restore database to original since the last COMMIT 回滾

SET TRANSACTION - Change transaction options like what rollback segment to use 設(shè)置當(dāng)前事務(wù)的特性,它對后面的事務(wù)沒有影響。

四、數(shù)據(jù)控制語言(DCL):

由 GRANT 和 REVOKE 兩個指令組成。DCL以控制用戶的訪問權(quán)限為主,GRANT為授權(quán)語句,對應(yīng)的REVOKE是撤銷授權(quán)語句。

格式:

1、創(chuàng)建用戶:create user username@ip identified by newPwd;

2、顯示用戶的權(quán)限:show grants for username@ip;

3、授權(quán):grant 權(quán)限1.權(quán)限2... on 數(shù)據(jù)庫名.* to username@ip;

DML權(quán)限:insert,delete,update

DQL權(quán)限:select

DDL權(quán)限:create,alter,drop...

4、撤銷權(quán)限:revoke 權(quán)限1.權(quán)限2..on 數(shù)據(jù)庫名.* from username@ip;

5、刪除用戶:drop user username;

使權(quán)限立即生效:flush privileges;

五、數(shù)據(jù)定義語言(DDL):

在數(shù)據(jù)庫中 創(chuàng)建新表或刪除表(CREAT TABLE 或 DROP TABLE),定義索引(鍵),規(guī)定表之間的鏈接,以及施加表間的約束。

CREATE - to create objects in the database 創(chuàng)建對象,可以用來創(chuàng)建用戶、數(shù)據(jù)庫,數(shù)據(jù)表,視圖,存儲過程,存儲函數(shù),觸發(fā)器,索引等。

ALTER - alters the structure of the database 修改對象,負(fù)責(zé)數(shù)據(jù)庫對象修改的指令。

DROP - delete objects from the database 刪除對象,只需要指定要刪除的數(shù)據(jù)庫對象名即可。

TRUNCATE - remove all records from a table, including all spaces allocated for the records are removed 徹底清除對象,無法找回

數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時表示是新驗證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }