婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > mysql隨機抽取一定數量的記錄實例講解

mysql隨機抽取一定數量的記錄實例講解

熱門標簽:福建外呼系統定制化 怎么在地圖標注位置生成圖片 美國反騷擾電話機器人 騰訊地圖標注提升 真人語音電話機器人 銅陵防封電銷卡 400電話可以免費申請嗎 電銷卡外呼系統供應商 悟空科技電話機器人

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

1.order by rand()

寫法:

SELECT
  id
FROM
  `table`
ORDER BY
  rand()

這種寫法的缺點是rand函數在order by中被執行多次,影響效率。

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;

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

這里有個問題是如果取多條 那么一定是連續的,所以如果是不想取連續數據,得循環,不過此語句效率極高,所以循環查詢是可以做的。

以上就是全部相關知識點內容,有需要的朋友們可以學習下,感謝大家對腳本之家的支持。

標簽:烏海 湖南 臨汾 湖北 白銀 聊城 云浮 武威

巨人網絡通訊聲明:本文標題《mysql隨機抽取一定數量的記錄實例講解》,本文關鍵詞  mysql,隨機,抽取,一定,數量,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《mysql隨機抽取一定數量的記錄實例講解》相關的同類信息!
  • 本頁收集關于mysql隨機抽取一定數量的記錄實例講解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 浙江省| 玉环县| 天台县| 防城港市| 西昌市| 罗平县| 岳阳县| 盈江县| 六枝特区| 卓尼县| 招远市| 北安市| 凤凰县| 肇东市| 鹤峰县| 若尔盖县| 马鞍山市| 宣威市| 保亭| 尖扎县| 二连浩特市| 宜宾市| 韶山市| 堆龙德庆县| 读书| 靖远县| 淮北市| 伊金霍洛旗| 宁乡县| 山阳县| 十堰市| 永仁县| 福州市| 古浪县| 奈曼旗| 乳山市| 胶南市| 卢氏县| 吉安县| 枞阳县| 阜南县|