我一直在想出一些假想邏輯來弄清楚以下幾點。如何快速找到匹配不同的字符串長度
我有一個表約十萬條記錄
的主鍵是ID,如
ID, col1, col2, col3
A3242X,,,
B323X,,,
A3242Y,,,
Y32YXX,,,
現在我有用戶輸入諸如A3242XABC123
和Y32
和... ...和
我的輸出結果是找出表中的所有記錄,其中 表中的ID以任何輸入值開頭或任何輸入值都以任何值開始Id表。
在這種情況下,輸出將是
A3242X (ID A3242XABC123 begins with this) and
Y32YXX (the input Y32 begins with this).
我的想法是,我會環路直通的輸入值,比較,然後減去端炭....如
search_var=A3242XABC123;
Loop
select id from table where value = search_var;
if found exit;
search_var = substr(search_var, 0,length(search_var-1));
end;
- 基本循環直到找到值。
──爲第二個方案中,我想我可以做somethign像
search_var[1] = A3242XABC123;
search_var[2] = Y32YXX;
for i = 1 to 2 loop
select id from table where id begins search_var;
add id to result array;
end;
我在尋找一種有效的方式來做到這一點。在大多數情況下,用戶只能輸入多達幾十個ID。
你爲什麼標記所有這些語言,當你的問題應該是SQL只? – 2013-02-20 20:29:01
@Tim - 當然是關注的一聲。 – Oded 2013-02-20 20:30:24
什麼sql服務器? – ysth 2013-02-20 20:35:51