亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

mysql如何獲取數(shù)據(jù)列值(int和string)最大值

 更新時間:2024年01月29日 10:18:58   作者:Jelly-小丑魚  
最近在開發(fā)項目的時候有個需求,我數(shù)據(jù)庫里面存了很多升級包,升級包有列數(shù)據(jù)表示的是升級包的版本號,類型屬于字符串,結(jié)構(gòu)類似于V1.0.2.22這種,然后后臺有個任務(wù)需要獲取最新版本號的那條數(shù)據(jù),本文給大家介紹mysql獲取數(shù)據(jù)列值(int和string)最大值,感興趣的朋友一起看看吧

最近在開發(fā)項目的時候有這么個需求,我數(shù)據(jù)庫里面存了很多升級包,升級包有列數(shù)據(jù)表示的是升級包的版本號,類型屬于字符串,結(jié)構(gòu)類似于V1.0.2.22這種,然后后臺有個任務(wù)需要獲取最新版本號的那條數(shù)據(jù)。最開始的時候我不知道數(shù)據(jù)庫居然對字符串類型的數(shù)據(jù)也可以篩選大小,之前一直覺得只有int型的數(shù)據(jù)才可以直接從數(shù)據(jù)庫里面回去最大最小值。然后當(dāng)我不知道的情況下,做法就很復(fù)雜了,把存儲的所有版本號全部取出來,然后再按字符串的位進(jìn)行逐一對比,最后篩選出最新也是版本號最大的版本,最后發(fā)現(xiàn)數(shù)據(jù)庫直接就可以操作。

mysql查詢方法果然神奇,居然可以給篩選出字符串的max的功能,只能說是牛逼?。?!

方法如下:原生的mysql語句是這樣的:

SELECT max(agent_ver) FROM versionpackage;

我用mysql workbench測試的截圖如下:

如果是查詢類型為int型的數(shù)據(jù),直接把max括號里的key值改成類型為int的key值即可

我們后臺開發(fā)用的是golang,mysql組件是gorm,先附上使用go代碼查詢最新版本號數(shù)據(jù)的主要代碼

var maxVer string
dbmax := GormDbMysql.Table("versionpackage")
res := dbmax.Select("MAX(agent_ver)").Scan(&maxVer)
if res.Error != nil {
	return
}
db := GormDbMysql.Table("versionpackage")
res = db.Where("agent_ver = ?", maxVer).Find(&datastruct)
if res.Error != nil {
	return
}

代碼很少,表達(dá)清楚就行了,簡單解釋一下,如果你只需要獲取到最新版本號那個字符串,那么只需要前段代碼即可,maxVer即是獲取到的最新版本號;我項目中是需要獲取最新版本號的整條數(shù)據(jù),所以下面我又根據(jù)版本號獲取了整條數(shù)據(jù),本來是想一次訪問獲取最新版本號的最新數(shù)據(jù)的,奈何沒有試成功,才又調(diào)用了一次,有可以一次就可以查詢出版本號最新的整條的數(shù)據(jù)的,歡迎評論區(qū)指出,萬分感激。

備注:

1、查詢整條數(shù)據(jù)的時候代碼里面沒有定義datastruct結(jié)構(gòu)體,這個根據(jù)不同的項目有所不同,此處省略了結(jié)構(gòu)體,需要使用的同學(xué)需要在前面添加該結(jié)構(gòu)體

2、還有就是如果數(shù)據(jù)庫里面的版本號數(shù)據(jù)為空的時候,使用max查詢最大值的時候會報錯,不知道gorm插件后面是否會修復(fù),我的處理方式是直接在前面再查詢了表中的count數(shù)量,數(shù)量大于0的才執(zhí)行下面的查詢工作

補(bǔ)充:

sql獲取最大值所在的行

要獲取最大值所在的行,可以使用以下SQL查詢語句:

SELECT * 
FROM table_name 
WHERE column_name = (SELECT MAX(column_name) FROM table_name);

其中,`table_name`是表的名稱,`column_name`是要查找最大值的列名。這條SQL語句將返回具有最大值的行。

到此這篇關(guān)于mysql獲取數(shù)據(jù)列值(int和string)最大值的文章就介紹到這了,更多相關(guān)mysql獲取數(shù)據(jù)列值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Win10下免安裝版MySQL8.0.16的安裝和配置教程圖解

    Win10下免安裝版MySQL8.0.16的安裝和配置教程圖解

    這篇文章主要介紹了Win10下免安裝版MySQL8.0.16的安裝和配置 ,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),具有一定的參考解決價值,需要的朋友可以參考下
    2019-06-06
  • Centos7.3下mysql5.7.18安裝并修改初始密碼的方法

    Centos7.3下mysql5.7.18安裝并修改初始密碼的方法

    這篇文章主要為大家詳細(xì)介紹了Centos7.3下mysql5.7.18安裝并修改初始密碼的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • 基于mysq字段選擇的詳解

    基于mysq字段選擇的詳解

    本篇文章是對mysq字段選擇進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • mysql增加和刪除索引的相關(guān)操作

    mysql增加和刪除索引的相關(guān)操作

    下面小編就為大家?guī)硪黄猰ysql增加和刪除索引的相關(guān)操作。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • Linux下如何實現(xiàn)Mysql定時任務(wù)

    Linux下如何實現(xiàn)Mysql定時任務(wù)

    這篇文章主要介紹了Linux下如何實現(xiàn)Mysql定時任務(wù),需要的朋友可以參考下
    2018-04-04
  • mysql雙游標(biāo)嵌套循環(huán)方式

    mysql雙游標(biāo)嵌套循環(huán)方式

    這篇文章主要介紹了mysql雙游標(biāo)嵌套循環(huán)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Mysql分區(qū)創(chuàng)建與刪除方式

    Mysql分區(qū)創(chuàng)建與刪除方式

    本文詳細(xì)介紹了如何在MySQL中創(chuàng)建和刪除分區(qū)的實例代碼,通過實際操作示例,幫助讀者理解分區(qū)的創(chuàng)建與管理方法,從而更好地優(yōu)化數(shù)據(jù)庫性能
    2025-02-02
  • Windows10 64位安裝MySQL5.6.35的圖文教程

    Windows10 64位安裝MySQL5.6.35的圖文教程

    這篇文章主要介紹了Windows10 64位安裝MySQL5.6.35的圖文教程,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • MySQL5.7 JSON類型使用詳解

    MySQL5.7 JSON類型使用詳解

    MySQL5.7發(fā)布后,專門設(shè)計了JSON數(shù)據(jù)類型以及關(guān)于這種類型的檢索以及其他函數(shù)解析。 我們先看看MySQL老版本的JSON存取方式,具體內(nèi)容詳情大家參考下本文吧
    2017-10-10
  • mysql 8.0.25之取巧解決修改密碼報錯的問題

    mysql 8.0.25之取巧解決修改密碼報錯的問題

    這篇文章主要介紹了mysql8.0.25之取巧解決修改密碼報錯的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05

最新評論