ugrás a tartalomhoz

tartomány, virtuális halmaz

kiss01 · 2009. Júl. 21. (K), 11.49
Sziasztok!

Azt szeretném megkérdezni Tőletek, hogy az alábbi problémára mi lehet a legegyszerűbb megoldás.
A feladat leegyszerűsítve:
Van egy táblám, mely egy mezőből áll, 1 és 9999 között számokat tartalmaz véletlenszerűen.
Feladat: Azokat a számokat szeretném listázni, amik 1 és 9999 között NEM szerepelnek az előbb említett adathalmazban.

Szerintetek hogyan lehetne megoldani?
Létrehozhatok egy táblát 1..9999 számokkal, de ha kikerülhető, nem szeretnék.
Nincsen valami megoldás arra (MS-SQL-ben) hogy létrehozzak egy 'virtuális halmazt' 1..9999 -cel, és ebből halmazművelettel kivonjam az első adathalmazban lévő számokat?

Vagy lehet valahogy a "not in"-ben használni valahogyan tartományt. Mint Pl not in (1..9999)

Köszönöm!
P
 
1

Egy ötlet - némi módosítással

palotaiond · 2009. Júl. 21. (K), 20.20
Én egy kétmezős táblával dolgoznék ebben az esetben. Felvennék két oszlopot, egy number és egy state (mint állapot) mezővel. A number értékei 1-től 9999-ig terjednének. A state 0 vagy 1 állapota jelezné, hogy az adott szám "be van-e állítva".

Így egy sima selecttel le lehet kérdezni, hogy melyek azok a számok, amelyek "nincsenek beállítva", vagyis amelyek a Te esetedben nem is szerepelnének a tábládban.

A véletlenszámok beírása - és törlése - pedig értelemszerűen updatekkel történne, nem insertekkel.
2

Egy ötlet - némi módosítással

kiss01 · 2009. Júl. 22. (Sze), 09.37
Sajnos ez nem megoldható, a táblák adottak...