2013-03-21 63 views
0

有沒有什麼好的解決方案可以在一個MySQL字段中存儲HTML多選字段?HTML多選擇存儲在MySQL中

我曾經嘗試過使用5列的MySQL表格,其中一個<select>有5個選項,但這對於40-50個選擇框或例如多個國家/地區的選擇器並不那麼舒服。

<select id="country" multiple="multiple"> 
    <option value="1">USA</option> 
    <option value="2">Canada</option> 
    <option value="3">Peru</option> 
    ... 
</select> 

在MySQL查詢我想使用多個值太大,像這樣:

SELECT * FROM tbl1 WHERE country IN (1,5,20,55); 

有什麼數據結構或數據類型......什麼來存儲這些搜索?

+0

東西像select2? http://ivaynberg.github.com/select2/ – 2013-03-21 18:30:53

+0

你聽說過多對多的關係嗎? – darma 2013-03-21 18:32:34

+0

不...我有一個大的HTML格式,146個問題,所有多選擇類型。我怎樣才能將這個存儲在MySQL中最簡單?字符串數據類型不太好,因爲數據表有100.000+條記錄。它會很慢。 – netdjw 2013-03-21 18:53:30

回答

0

爲每個只存儲Where In字符串的用戶提供一個查詢列。 然後你可以得到該字符串

SELECT string FROM users WHERE id = userid 
variable = queryresults; 

SELECT * FROM tbl1 WHERE country IN (variable);