0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SQL常用語(yǔ)句篇

海馬硬件 ? 來源:海馬硬件 ? 2023-10-07 16:22 ? 次閱讀

一、所謂SQL

SQL (Structured Query Language) 是具有數(shù)據(jù)操縱和數(shù)據(jù)定義等多種功能的數(shù)據(jù)庫(kù)語(yǔ)言,這種語(yǔ)言具有交互性特點(diǎn),能為用戶提供極大的便利,數(shù)據(jù)庫(kù)管理系統(tǒng)應(yīng)充分利用SQL語(yǔ)言提高計(jì)算機(jī)應(yīng)用系統(tǒng)的工作質(zhì)量與效率...巴拉巴拉。相信大家對(duì)SQL語(yǔ)言都有一定的認(rèn)知,這里就不多贅述了。

二、常用語(yǔ)句

1、SELECT all columns with LIMIT

數(shù)據(jù)分析過程中,我們常常會(huì)有對(duì)數(shù)據(jù)的內(nèi)容或格式做預(yù)覽的需求,在不明確查詢要求的情況下,通常會(huì)做SELECT *操作來執(zhí)行全部結(jié)果,LIMIT n命令可以幫助我們獲取到之行結(jié)果的前n條,減少執(zhí)行時(shí)間和內(nèi)存。

5103c4b2-64e4-11ee-939d-92fbcf53809c.png

51253f02-64e4-11ee-939d-92fbcf53809c.png

2、Distinctclause

Distinct可以對(duì)查詢字段的執(zhí)行結(jié)果Unique,如下

未執(zhí)行Distinctclause

51428076-64e4-11ee-939d-92fbcf53809c.png

5151b0d2-64e4-11ee-939d-92fbcf53809c.png

執(zhí)行Distinctclause

516eadf4-64e4-11ee-939d-92fbcf53809c.png

517b53b0-64e4-11ee-939d-92fbcf53809c.png

3、joins

包括笛卡爾積、內(nèi)積、外積、Self Join等。具體使用方法如下

linner join可以輸出兩個(gè)表或者更多表中共同的行,類似數(shù)學(xué)中的韋恩圖,取兩個(gè)集合的交集

lLeft join僅僅輸出左邊表中的所有行,輸出結(jié)果中右邊表不存在的值為Null

lRight join僅僅輸出右邊表中的所有行,輸出結(jié)果中左邊表不存在的值為Null

51860daa-64e4-11ee-939d-92fbcf53809c.png

4、Case When clause

可以讓我們根據(jù)現(xiàn)有的數(shù)據(jù)生成一些新的列,類似于Python中的if-else語(yǔ)法。

例如,基于salary字段條件生成新列”salary_rank”

51ae40ae-64e4-11ee-939d-92fbcf53809c.png

51d9f6cc-64e4-11ee-939d-92fbcf53809c.png

5、Sub-queries

即子查詢,如下查詢所有工資高于‘王大’的人的全部字段

51eb9d6e-64e4-11ee-939d-92fbcf53809c.png

5206857a-64e4-11ee-939d-92fbcf53809c.png

6、Ranking functions

lrow_nubmer(),這個(gè)排序函數(shù)的特點(diǎn)是相同數(shù)據(jù),先查出的排名在前,沒有重復(fù)值。先查出來的數(shù)據(jù)的rank排名優(yōu)先。partition by相當(dāng)于分組查詢。desc是降序

lBTW-說下rank()和row_nubmer()的區(qū)別,rank()函數(shù)是跳躍排序,相同數(shù)據(jù)排名相同,比如并列第1,則兩行數(shù)據(jù)都標(biāo)為1,下一位將是第3名.中間的2會(huì)被直接跳過。排名會(huì)有重復(fù)值

5221c40c-64e4-11ee-939d-92fbcf53809c.png

523c6fa0-64e4-11ee-939d-92fbcf53809c.png

7、Analytic functions

即分析函數(shù),常用的有:

lfirst_value和last_value取的是排序后的數(shù)據(jù)截止當(dāng)前行的第一行數(shù)據(jù)和最后一行數(shù)據(jù)

lLag和Lead分析函數(shù)可以在一次查詢中取出當(dāng)前行后N行和前N行的數(shù)據(jù)。第一個(gè)參數(shù)為列名,第二個(gè)參數(shù)為往后/前第n行(可選,默認(rèn)為1),第三個(gè)參數(shù)為默認(rèn)值(當(dāng)往上第n行為NULL時(shí)候,取默認(rèn)值,如不指定,則為NULL)

5249718c-64e4-11ee-939d-92fbcf53809c.png

5254488c-64e4-11ee-939d-92fbcf53809c.png

8、Aggregate functions

聚合函數(shù),SUM, AVG, MAX, MIN, COUNT等。

需要注意的是聚合函數(shù)需要通過‘group by’分組,確定最小聚合維度

52749d80-64e4-11ee-939d-92fbcf53809c.png

52b18a7e-64e4-11ee-939d-92fbcf53809c.png

9、Union & union all

lUnion & union all二者都是對(duì)多個(gè)列數(shù)、列名、列字段類型相同的數(shù)據(jù)集進(jìn)行組合,產(chǎn)出成一個(gè)數(shù)據(jù)集的function

l區(qū)別是union會(huì)對(duì)結(jié)果數(shù)據(jù)集進(jìn)行去重,相當(dāng)于distinct,而union all會(huì)做全部結(jié)果集并集產(chǎn)出,不會(huì)去除重復(fù)行

union示例:

52b7df6e-64e4-11ee-939d-92fbcf53809c.png

52d5c466-64e4-11ee-939d-92fbcf53809c.png

union all示例:

52e9f6b6-64e4-11ee-939d-92fbcf53809c.png

52fefa66-64e4-11ee-939d-92fbcf53809c.png






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • SQL
    SQL
    +關(guān)注

    關(guān)注

    1

    文章

    753

    瀏覽量

    44032
  • python
    +關(guān)注

    關(guān)注

    55

    文章

    4767

    瀏覽量

    84375

原文標(biāo)題:SQL速成秘籍-常用語(yǔ)句篇

文章出處:【微信號(hào):海馬硬件,微信公眾號(hào):海馬硬件】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    VHDL語(yǔ)言的常用語(yǔ)

    VHDL語(yǔ)言的常用語(yǔ)法[學(xué)習(xí)要求] 掌握VHDL硬件描述語(yǔ)言的基本描述語(yǔ)句。并可以利用這些語(yǔ)句進(jìn)行簡(jiǎn)單電路的設(shè)計(jì)。[重點(diǎn)與難點(diǎn)]重點(diǎn):常用的并行語(yǔ)句
    發(fā)表于 03-19 16:45

    PCB常用語(yǔ)匯總

    PCB常用語(yǔ)匯總
    發(fā)表于 11-13 12:03

    MaxCompute常用語(yǔ)句匯總(更新ing)

    的數(shù)據(jù)導(dǎo)入方案以及多種經(jīng)典的分布式計(jì)算模型,能夠更快速的解決用戶海量數(shù)據(jù)計(jì)算問題,有效降低企業(yè)成本,并保障數(shù)據(jù)安全。本文收錄了一些MaxCompute常用SQL、MR、Tunnel等語(yǔ)句,幫助您快速了解并
    發(fā)表于 02-02 15:57

    MaxCompute常用語(yǔ)句匯總(更新ing)

    的數(shù)據(jù)導(dǎo)入方案以及多種經(jīng)典的分布式計(jì)算模型,能夠更快速的解決用戶海量數(shù)據(jù)計(jì)算問題,有效降低企業(yè)成本,并保障數(shù)據(jù)安全。本文收錄了一些MaxCompute常用SQL、MR、Tunnel等語(yǔ)句,幫助您快速了解并
    發(fā)表于 02-02 16:00

    labsql ADO 常用語(yǔ)句命令

    labsqlADO 常用語(yǔ)句命令
    發(fā)表于 08-14 16:21

    常用sql語(yǔ)句有哪些?

    常用sql語(yǔ)句(一)
    發(fā)表于 06-18 16:47

    51單片機(jī)c語(yǔ)言常用語(yǔ)句詳解

    51單片機(jī)c語(yǔ)言常用語(yǔ)句詳解,一.常量與變量1.常量又稱為標(biāo)量,在程序執(zhí)行過程中不能改變,常量數(shù)據(jù)類型有整形(int)、浮點(diǎn)型(float)、字符型和字符串型。應(yīng)用中一般使用“#define”定義在
    發(fā)表于 07-19 08:25

    51單片機(jī)c語(yǔ)言常用語(yǔ)句詳解

    51單片機(jī)c語(yǔ)言常用語(yǔ)句詳解,關(guān)于51單片機(jī)C編程 return語(yǔ)句的使用案例:函數(shù)寫法1: u8 is_timeout(tick start_time, tick interval
    發(fā)表于 07-20 06:34

    單片機(jī)C語(yǔ)言編程常用語(yǔ)句有哪些?

    單片機(jī)C語(yǔ)言編程常用語(yǔ)句有哪些?
    發(fā)表于 10-21 08:45

    VHDL語(yǔ)言的常用語(yǔ)

    [學(xué)習(xí)要求] 掌握VHDL硬件描述語(yǔ)言的基本描述語(yǔ)句。并可以利用這些語(yǔ)句進(jìn)行簡(jiǎn)單電路的設(shè)計(jì)。[重點(diǎn)與難點(diǎn)]重點(diǎn):常用的并行語(yǔ)句與順序語(yǔ)句的語(yǔ)
    發(fā)表于 03-18 22:03 ?100次下載

    SQL所有常用語(yǔ)句以及常用事務(wù)的詳細(xì)說明

    本手冊(cè)為 Transact-SQL 用戶指南,介紹 SQL 關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言的增強(qiáng)版 Transact-SQL? 。 Transact-SQL 用戶指南 適用于初學(xué)者及有其它
    發(fā)表于 02-28 08:00 ?0次下載

    SQL語(yǔ)句常用語(yǔ)法公式和常見的面試題目

    數(shù)據(jù)庫(kù)的相關(guān)SQL查詢語(yǔ)句是軟件測(cè)試工程師面試的一大重點(diǎn),也是很多小伙伴面試中覺得比較困難的知識(shí)點(diǎn)。下面小編總結(jié)出一些SQL語(yǔ)句常用語(yǔ)法公
    的頭像 發(fā)表于 11-07 10:10 ?1236次閱讀

    SQL常用語(yǔ)句

    讀取length行 -- SELECT * FROM user limit #{ start }, #{length}; 模糊查詢 SQL 語(yǔ)句選取 name 以字母 "G" 開始的所有客戶
    的頭像 發(fā)表于 01-13 15:34 ?621次閱讀

    MySQL常用語(yǔ)句

    MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),廣泛應(yīng)用于Web應(yīng)用程序的開發(fā)以及數(shù)據(jù)管理領(lǐng)域。在使用MySQL時(shí),有一些常用語(yǔ)句可以幫助我們進(jìn)行數(shù)據(jù)的操作和管理。接下來,我將詳細(xì)介紹MySQL的常用語(yǔ)句
    的頭像 發(fā)表于 11-21 11:11 ?482次閱讀

    oracle執(zhí)行sql查詢語(yǔ)句的步驟是什么

    Oracle數(shù)據(jù)庫(kù)是一種常用的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),具有強(qiáng)大的SQL查詢功能。Oracle執(zhí)行SQL查詢語(yǔ)句的步驟包括編寫SQL
    的頭像 發(fā)表于 12-06 10:49 ?876次閱讀