我有一個SQLite表名爲用戶。每個用戶有一個主要用戶ID和多個SecID(所有整數)。 SecIDs以CSV格式存儲爲單個字段(類型是字符串)。例如,假設用戶1 具有SecIDs如4,5,6,7-和用戶2具有SecIDs爲8,9,55,66。CSV字段sqlite的搜索操作
因此,對於用戶1 : -
用戶ID = 1
SecIDs = 「4,5,6,7」
而對於用戶2 : -
用戶ID = 2
SecIDs =「8,9,55,66」 (依此類推)
現在我的問題是 - 我有一個特定的SecID say 5.我必須提取相應的用戶ID(這是1)。那麼這個操作的查詢是什麼?
P.S-我的SQLite表中可能有成千上萬的用戶記錄。所以搜索查詢應該是最小化時間消耗的優化。
我們已經考慮過這個選項,但是目前的情況是,我們已經有一個工作代碼,正在運行,其中每個UserID只有一個SecID。現在有一個新的要求,特定的用戶可以有多個SecID。由於(SecID-UserID)對已有一組現有函數,因此我們試圖在現有環境中滿足這一新要求。 添加一個新表格意味着必須在程序中添加新的方法。所以這個疑問:) –
你仍然必須改變你的表,因爲你的字符串字段不是一個整數字段,然後你必須改變你的軟件來處理該字段。你所描述的是我所說的「一個根本不好的設計決定」。 –
完全同意你在「糟糕的設計」部分:),無論如何,我們決定去單獨的表格,因爲我們無法找出任何其他更好的選擇。 –