2017-06-04 41 views
-1

我有一個表以「billnumber」柱(INT 11)如何索引每1000號一起

billnumber值可以改變每3分或4的記錄,所以如果我索引的1M記錄我將具有250K索引

反正我要的是指數每1000 billnumber一起 - 從1到1000 - 1001至2000年

+0

是的,請參閱https://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very- simple-sql-query – Strawberry

+0

我在這個鍋裏沒有找到我的答案 感謝您的幫助 –

+0

嘗試更加努力!!!!! – Strawberry

回答

0

是否有實際上是一個問題嗎?

INDEX(billnumber)是不唯一的,這將返回3個或4行毫無困難:

SELECT ... 
    WHERE bill_number = 1234 

如果您想選擇1..1000,根本就

SELECT ... 
    WHERE bill_number BETWEEN 1 AND 1000; 

兩者都是有效的。

請記住,數據庫表沒有訂單。要獲得訂購的行,您必須必須使用ORDER BY

同時,INDEXes試圖使WHEREORDER BY有效。

+0

謝謝里克它對我來說一個明確的答案 –

+0

是的,這不是一個問題,我只是擔心'選擇'性能 –

+0

做地址選擇性能,我們需要實際的'SELECT'(雖然我們可能建議改變以提高性能)和'SHOW CREATE TABLE'(儘管我們可能建議索引改變和/或數據類型改變)。 –