久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

mysql - 如何高效的查詢需要合并大數(shù)據(jù)表的操作

瀏覽:208日期:2022-06-19 13:20:33

問(wèn)題描述

1.存在兩個(gè)數(shù)據(jù)庫(kù)Shanghai和Beijing(假設(shè)其他數(shù)據(jù)丟失,中國(guó)人口數(shù)據(jù)只剩下上海和北京)2.兩個(gè)數(shù)據(jù)庫(kù)中都有同樣結(jié)構(gòu)的表table_people,數(shù)據(jù)量都在一千萬(wàn)左右3.有以下數(shù)據(jù)Shanghai.table_people

idusernamebirthday1jhon2016-08-15 12:00:002may2016-08-14 13:00:003abcd11112015-08-01 14:00:00............

Beijing.table_people

idusernamebirthday1mike2016-08-16 23:58:002kitty2016-08-03 15:00:063ab1112014-01-01 15:16:18............

問(wèn):1.如何高效的(1s內(nèi))查出最近在中國(guó)出生的前十個(gè)人2.對(duì)于YII框架數(shù)據(jù)提供器應(yīng)該怎么寫(xiě)

問(wèn)題解答

回答1:

(SELECT * FROM Beijing.table_people ORDER BY birthday limit 10)union all(SELECT * FROM shanghai.table_people ORDER BY birthday limit 10)ORDER BY birthday limit 10

你看這種思路可以嗎?

回答2:

birthday類型得是datetime不能是string,然后作索引。查的時(shí)候先union all再order by再limit 10。mysql內(nèi)部應(yīng)該是就是對(duì)兩個(gè)索引做一下歸并排序

如果想更快,就把birthday類型改成int的

回答3:

每個(gè)表都取符合條件的前10條數(shù)據(jù),然后再對(duì)取出來(lái)的數(shù)據(jù)在代碼里排序并取出最終的前10條數(shù)據(jù)。

不過(guò)這樣寫(xiě)代碼也很累,以后加一個(gè)表就得改代碼,所以建議找一下數(shù)據(jù)庫(kù)中間件的相關(guān)資料。

回答4:

兩個(gè)sql,根據(jù)id desc 以及l(fā)imit 10,都插入到一個(gè)臨時(shí)表,對(duì)20條數(shù)據(jù)時(shí)間排序再limit10

相關(guān)文章:
主站蜘蛛池模板: 汉寿县| 文安县| 新竹市| 广南县| 神农架林区| 普兰县| 噶尔县| 彭泽县| 东源县| 石狮市| 忻州市| 教育| 胶南市| 邯郸市| 禹城市| 绿春县| 昆山市| 烟台市| 常德市| 蒙山县| 凯里市| 泾阳县| 乡宁县| 讷河市| 苍南县| 逊克县| 界首市| 建德市| 射阳县| 台东县| 格尔木市| 二手房| 禄丰县| 昌乐县| 道真| 临颍县| 敦煌市| 北海市| 青龙| 诏安县| 蕉岭县|