溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

mysql中的多個(gè)字段最大最小值的語法是什么

發(fā)布時(shí)間:2022-09-26 10:06:14 來源:億速云 閱讀:114 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“mysql中的多個(gè)字段最大最小值的語法是什么”,在日常操作中,相信很多人在mysql中的多個(gè)字段最大最小值的語法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”mysql中的多個(gè)字段最大最小值的語法是什么”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

    mysql多個(gè)字段最大最小值

    1、語法

    • 最大值: GREATEST(expr_1, expr_2, ...expr_n)

    • 最小值: LEAST(expr_1, expr_2, ...expr_n)

    2、說明

    GREATEST(expr_1, expr_2, ...expr_n)函數(shù)從表達(dá)式(列、常量、計(jì)算值)expr_1, expr_2, ... expr_n等中找出最大的數(shù)返回。

    在比較時(shí),OracIe會(huì)自動(dòng)按表達(dá)式的數(shù)據(jù)類型進(jìn)行比較,以expr_1的數(shù)據(jù)類型為準(zhǔn)。下面以O(shè)racle為例:

    示例一【數(shù)值】

    expr_1為數(shù)值型。按大小進(jìn)行比較。

    ①、全部為數(shù)值型,取出最大值為16:

    SELECT GREATEST(2, 5, 12, 3, 16, 8, 9) RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    ②、部分為數(shù)值型,但是字符串可以根據(jù)expr_1的數(shù)據(jù)類型通過隱式類型轉(zhuǎn)換轉(zhuǎn)成數(shù)值型:

    SELECT GREATEST(2, '5', 12, 3, 16, 8, 9) RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    ③、部分為數(shù)值型,但是字符串不能通過隱式類型轉(zhuǎn)換成數(shù)值型會(huì)報(bào)錯(cuò),因?yàn)樽址瓵不能轉(zhuǎn)換成數(shù)值型:

    SELECT GREATEST(2, 'A', 12, 3, 16, 8, 9) RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    示例二【字符串】

    expr_1為字符型。按首字母進(jìn)行比較(如果相等則向下比較)。

    ①、全部為字符型,取出最大值G:

    SELECT GREATEST('A', 'B', 'C', 'D', 'E', 'F','G') RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    ②、全部為字符型,首字母相等:

    SELECT GREATEST('A', 'B', 'C', 'D', 'E','GA', 'GAB') RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    ③、部分為字符型,會(huì)把非字符型轉(zhuǎn)換成字符型:

    SELECT GREATEST('A', 6, 7, 5000, 'E', 'F','G') RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    示例三【時(shí)間】

    expr_1為時(shí)間類型。

    ①、全部為時(shí)間類型:

    SELECT GREATEST(sysdate,TO_DATE('2014-08-01','YYYY-MM-DD')) RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    ②、部分為時(shí)間類型,不能進(jìn)行隱式類型轉(zhuǎn)換:

    SELECT GREATEST(sysdate,'2014-08-01') RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    示例四【空值】

    使用GREATEST取最大值的時(shí)候,當(dāng)expr為函數(shù)的時(shí)候,不可避免的會(huì)產(chǎn)生空值。產(chǎn)生空值,函數(shù)GREATEST會(huì)怎么進(jìn)行處理那:

    ①、expr_1為NULL時(shí): 

    SELECT GREATEST(NULL, 'B', 'C', 'D', 'E','GA', 'GAB') RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    ②、expr_1不為NULL時(shí),其它的expr為NULL時(shí):

    SELECT GREATEST('A', 'B', 'C', 'D', 'E',NULL, 'GAB') RESULT FROM DUAL;

    mysql中的多個(gè)字段最大最小值的語法是什么

    由上可以發(fā)現(xiàn),只要GREATEST的expr有一個(gè)為NULL,都會(huì)返回NULL。

    mysql取多列最大最小值GREATEST,LEAST

    -- 獲取多列最大最小值
    SELECT GREATEST(1,2,3,4);   結(jié)果:4
    SELECT LEAST(1,2,3,4);   結(jié)果:1
    
    -- 獲取一列中最大最小值
    SELECT MAX(col1);  
    SELECT MIN(col1);

    到此,關(guān)于“mysql中的多個(gè)字段最大最小值的語法是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

    向AI問一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI