我有一個充滿數字(1001001..1009999)的巨大表格,並且在那個區域當然有一堆未使用的數字。所以,我可以通過這樣做返回所有這些數字:在一堆數字中找到一個未使用的數字
SELECT MY_IDENTIFIER FROM MY_TABLE
將返回所有使用的數字。我怎樣才能得到該表中未使用的數字列表?我使用JavaScript工作serverside(rhino/jaxer),我的數據庫是Oracle 10g。
謝謝,
我有一個充滿數字(1001001..1009999)的巨大表格,並且在那個區域當然有一堆未使用的數字。所以,我可以通過這樣做返回所有這些數字:在一堆數字中找到一個未使用的數字
SELECT MY_IDENTIFIER FROM MY_TABLE
將返回所有使用的數字。我怎樣才能得到該表中未使用的數字列表?我使用JavaScript工作serverside(rhino/jaxer),我的數據庫是Oracle 10g。
謝謝,
下面的查詢會給你你需要的東西:
SELECT seq_num
FROM (SELECT (lvl + &&v_from - 1) seq_num
FROM (SELECT *
FROM ( SELECT LEVEL lvl
FROM DUAL
CONNECT BY LEVEL <= (&&v_to - &&v_from) + 1)))
WHERE seq_num NOT IN (SELECT my_identifier FROM my_table);
更換& & v_to和& & v_from與邊界的數字。
參考:http://oraqa.com/2006/01/20/how-to-generate-sequence-numbers-between-two-numbers/
Javascript是不是真的有關,不是嗎? 我曾經做過類似幾年前的事情。
我有一個表中的所有數字在一個範圍內,並加入這兩個表,並選擇那些無法加入的數字。否定的選擇。
喜歡的東西
select nr bulk collect into nrs1 from tbl1 where nr not in
(select nr from tbl2);
你需要某種形式的報表,或者你需要以編程方式使用它們? – 2010-12-20 22:30:15
要擴展@ Eric的評論:您是否想要SQL或Javascript中的解決方案? – Xodarap 2010-12-20 22:41:47
我更喜歡這兩種語言,但更喜歡它背後的想法,所以我可以適用於多種語言。 – Shyam 2010-12-21 00:10:55