2010-01-19 63 views
1

我有15,000個數字,範圍在1000-8000之間。每個號碼分配給六個類別和子類別中的一個,在某些情況下有重疊。 樣本數據:根據數千條記錄顯示數字範圍

value cat1 cat2 
2333 WHITE A 
2334 ORANGE B 
2335 ORANGE A 
2335 WHITE B 
2336 ORANGE A 
2336 WHITE B 
2336 RED  C 
2337 RED  A 
2338 RED  A 
2339 RED  A 
2340 RED  A 

什麼是這些值作爲這種結合的有效途徑:

  • 白:2333,2335年至2336年
  • 橙:2334年至2335年,2336
  • 紅:2336-2340

使用案例:給定一個值,如2338 A什麼是檢索cat1值的有效方法RED

對於這個用例,存儲這些字符串來測試的更有效方法是什麼?

語言偏好的JavaScript,PHP或MS Excel

+0

記錄已經在Excel中?如果你想使用PHP不是最好將它們轉移到數據庫中嗎? – kennytm 2010-01-19 05:40:26

+0

目前這些數字是在Excel中,但可以傳輸到MySQL或其他格式,無論什麼套裝 - 數據的存儲不是一個可以改變的因素,問題是如何處理數據一旦可用。 – 2010-01-19 05:42:47

+0

好的。你的問題是「cat1' ='Red'」如何輸出'value' = 2336〜2340「或用例即」給定'2338A'如何輸出'cat1' = RED「? – kennytm 2010-01-19 05:47:43

回答

1

對我來說,似乎你找錯了地方,你的解決方案。

執行「檢索」數據的任何變化/組合類型的最有效方法是「查詢」數據庫。

如果是我,我會把我傾倒在MySQL中的所有數據,並從那裏做簡單的查詢:

$num = 2338 
$letter = A 

SQL:

SELECT cat1 
FROM dataSet 
WHERE value = $num AND catb = $letter 

相應地更改您的搜索值。

+0

是的,我認爲這就是我該怎麼做,如果MySQL不可用,我最初的想法是在JavaScript中有大量的ranged。 – 2010-01-19 06:02:45

0

因爲這個問題被標記爲Excel,我會提及您可以使用ADO和Jet來查詢Excel。