欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql隨機(jī)抽取一定數(shù)量的記錄實(shí)例講解

 更新時(shí)間:2019年09月06日 15:13:28   作者:沉默的土豆  
在本篇文章里小編給大家整理的是關(guān)于mysql隨機(jī)抽取一定數(shù)量的記錄實(shí)例相關(guān)知識(shí)點(diǎn),有需要的朋友們可以學(xué)習(xí)下。

以前碰見這種使用場(chǎng)景都是直接order by rand()來處理的,但是效率實(shí)在是不敢恭維,所以最近又碰見這種場(chǎng)景,在網(wǎng)上找尋下比較好的解決辦法.

1.order by rand()

寫法:

SELECT
  id
FROM
  `table`
ORDER BY
  rand()

這種寫法的缺點(diǎn)是rand函數(shù)在order by中被執(zhí)行多次,影響效率。

2.max(id) * rand() 使用join

寫法:

SELECT
  *
FROM
  `table` AS t1
JOIN (
  SELECT
    ROUND(
      RAND() * (
        (SELECT MAX(id) FROM `table`) - (SELECT MIN(id) FROM `table`)
      ) + (SELECT MIN(id) FROM `table`)
    ) AS id
) AS t2
WHERE
  t1.id >= t2.id
ORDER BY
  t1.id
LIMIT 1;

網(wǎng)上的大佬們都推薦第二種寫法,特此記錄下,感覺最大id和最小id可以放在程序里來計(jì)算。

這里有個(gè)問題是如果取多條 那么一定是連續(xù)的,所以如果是不想取連續(xù)數(shù)據(jù),得循環(huán),不過此語(yǔ)句效率極高,所以循環(huán)查詢是可以做的。

以上就是全部相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下,感謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • Mysql雙主配置的詳細(xì)步驟

    Mysql雙主配置的詳細(xì)步驟

    雙主可以在一定程度上保證主庫(kù)的高可用,在一臺(tái)主庫(kù)down掉之后,可以在極短的時(shí)間內(nèi)切換到另一臺(tái)主庫(kù)上,減少了主從同步給線上主庫(kù)帶來的壓力,這篇文章主要給大家介紹了關(guān)于Mysql雙主配置的詳細(xì)步驟,需要的朋友可以參考下
    2022-06-06
  • MySQL添加索引特點(diǎn)及優(yōu)化問題

    MySQL添加索引特點(diǎn)及優(yōu)化問題

    這篇文章主要介紹了MySQL添加索引特點(diǎn)及優(yōu)化問題,MySQL索引的建立對(duì)于MySQL的高效運(yùn)行是很重要的,索引可以大大提高M(jìn)ySQL的檢索速度,感興趣的小伙伴可以參考一下
    2022-07-07
  • MySQL中rank() over、dense_rank() over、row_number() over用法介紹

    MySQL中rank() over、dense_rank() over、row_number()&n

    本文主要介紹了MySQL中rank() over、dense_rank() over、row_number() over用法介紹,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 詳解Mysql雙機(jī)熱備和負(fù)載均衡的實(shí)現(xiàn)步驟

    詳解Mysql雙機(jī)熱備和負(fù)載均衡的實(shí)現(xiàn)步驟

    MySQL數(shù)據(jù)庫(kù)沒有增量備份的機(jī)制,但它提供了一種主從備份的機(jī)制,就是把主數(shù)據(jù)庫(kù)的所有的數(shù)據(jù)同時(shí)寫到備份數(shù)據(jù)庫(kù)中。這篇文章主要介紹了Mysql的雙機(jī)熱備和負(fù)載均衡,需要的朋友可以參考下
    2019-10-10
  • Mysql關(guān)于數(shù)據(jù)庫(kù)是否應(yīng)該使用外鍵約束詳解說明

    Mysql關(guān)于數(shù)據(jù)庫(kù)是否應(yīng)該使用外鍵約束詳解說明

    MySQL 外鍵約束(FOREIGN KEY)是表的一個(gè)特殊字段,經(jīng)常與主鍵約束一起使用。對(duì)于兩個(gè)具有關(guān)聯(lián)關(guān)系的表而言,相關(guān)聯(lián)字段中主鍵所在的表就是主表,外鍵所在的表就是從表。外鍵用來建立主表與從表的關(guān)聯(lián)關(guān)系,為兩個(gè)表的數(shù)據(jù)建立連接,約束兩個(gè)表中數(shù)據(jù)的一致性和完整性
    2021-10-10
  • linux二進(jìn)制通用包安裝mysql5.6.20教程

    linux二進(jìn)制通用包安裝mysql5.6.20教程

    這篇文章主要為大家詳細(xì)介紹了linux二進(jìn)制通用包安裝mysql5.6.20的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • SQL中MIN和MAX及常見函數(shù)教程示例

    SQL中MIN和MAX及常見函數(shù)教程示例

    這篇文章主要為大家介紹了SQL中MIN和MAX及常見函數(shù)教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-11-11
  • mysql sql_mode="" 的作用說明

    mysql sql_mode="" 的作用說明

    在看discuz源碼時(shí)看到了sql_mode="",不知道是干嘛的,猜想是設(shè)置模式,但是不清楚是什么模式,于是從網(wǎng)上搜了下,sql_mode="" 的作用
    2011-08-08
  • MySQL查詢語(yǔ)句大全集錦

    MySQL查詢語(yǔ)句大全集錦

    這篇文章主要介紹了MySQL查詢語(yǔ)句大全集錦,需要的朋友可以參考下
    2016-06-06
  • MySQL的全局鎖和表級(jí)鎖的具體使用

    MySQL的全局鎖和表級(jí)鎖的具體使用

    在真實(shí)的企業(yè)開發(fā)環(huán)境中使用MySQL,我們應(yīng)該考慮一個(gè)問題:如果保證數(shù)據(jù)并發(fā)訪問的一致性呢?這一篇我就來聊聊MySQL的鎖,感興趣的可以了解一下
    2021-08-08

最新評(píng)論