Avatar billede hundevennen Nybegynder
27. april 2006 - 08:01 Der er 25 kommentarer og
1 løsning

hjælp til WHERE klausul

Jeg har en databasen hvor et af felterne hedder celleid og jeg vil gerne have alt hvad der står i det felt
altås noget lignene
select * fra tabel where celleid = alt hvad derstår i celleid

kan man det? og hvordan
Avatar billede dr_chaos Nybegynder
27. april 2006 - 08:04 #1
SELECT celleid FROM Tabel
Avatar billede dr_chaos Nybegynder
27. april 2006 - 08:04 #2
Det vælger alt i celleid
Avatar billede hundevennen Nybegynder
27. april 2006 - 08:31 #3
nu er det desværre sådan at jeg ikke kan redigere i selve select delen - men kun i where klausulen
Avatar billede dr_chaos Nybegynder
27. april 2006 - 08:35 #4
hvorfor kan du ikke ændre i select delen ?
Avatar billede hundevennen Nybegynder
27. april 2006 - 08:56 #5
fordi det er i et program hvor selve select * fra tabel er foruddefineret
Avatar billede michael_stim Ekspert
27. april 2006 - 09:01 #6
Kan du lave en sub?
SELECT * FROM tabel WHERE cellid IN(SELECT cellid FROM tabel)
Avatar billede ldanielsen Nybegynder
27. april 2006 - 09:02 #7
Så uanset hvor mange poster der er i tabel, så vil du have alle posterne?


Så er det bare
SELECT * FROM Tabel

Og hvis der SKAL være en where clause så kan du bare lave en som

... WHERE celleid >= 0 OR celleid < 0

Eller (det her er lidt skørt):

... WHERE 2 + 2 = 4

Begge dele virker
Avatar billede michael_stim Ekspert
27. april 2006 - 09:03 #8
Lidt omstændigt måske ;o) Men det er nok den eneste måde.
Ved ikke om man kan bruge LIKE. WHERE cellid LIKE '*'
Avatar billede morhan Novice
27. april 2006 - 09:06 #9
WHERE cellid = cellid

er nok den mest simple måde at få returneret alle rækker
Avatar billede dr_chaos Nybegynder
27. april 2006 - 09:11 #10
eller WHERE 1=1
Avatar billede morhan Novice
27. april 2006 - 09:12 #11
ikke hvis "WHERE cellid = "
er forprogrammeret :)
Avatar billede hundevennen Nybegynder
27. april 2006 - 09:15 #12
jeg skal ind i en boks og skrive celleid=1 or celleid=2 or celleid=3 og det er derfor jeg godt kune tænke mig at skrive f.eks celleid < 0 f.eks hvilket jeg lige prøver
Avatar billede dr_chaos Nybegynder
27. april 2006 - 09:15 #13
han skriver jo at han kan ændre i where klausul og at kun "SELECT * FROM tabel" er foruddefineret.
Avatar billede hundevennen Nybegynder
27. april 2006 - 09:32 #14
jeg beklager - jeg har ikke tænkt det ordentlig igennem - jeg skal skrive noget lignende dette:
celleid= og så her skal jeg vælge celleid i en anden tabel og ha det hele med fra celleid - skørt? eller hva?
Avatar billede michael_stim Ekspert
27. april 2006 - 09:47 #15
På den måde kan du kun få en post med af gangen, ellers får du en fejl hvis du vælger flere poster fra en anden tabel. Laver du en subselect med = må man kun modtage én post.
SELECT * from tabel1 WHERE celleid=(SELECT t2.celleid FROM tabel2 WHERE t2.celleid=t1.celleid)
Avatar billede michael_stim Ekspert
27. april 2006 - 09:48 #16
SELECT * from tabel1 t1 WHERE celleid=(SELECT t2.celleid FROM tabel2 t2 WHERE t2.celleid=t1.celleid)
Avatar billede ldanielsen Nybegynder
27. april 2006 - 09:50 #17
Hvad med at bruge IN:

SELECT * from tabel WHERE celleid IN (SELECT celleid FROM tabel2)
Avatar billede michael_stim Ekspert
27. april 2006 - 09:58 #18
Det har jeg forslået. Men ser ud til at han skal bruge =
Avatar billede ldanielsen Nybegynder
27. april 2006 - 10:11 #19
Hvis han kan skrive celleid < 0 kan han måske også skrive celleid IN (SELECT celleid FROM tabel2)?
Avatar billede hundevennen Nybegynder
27. april 2006 - 10:27 #20
idanielsen - din sætning virker - altså
SELECT * from tabel WHERE celleid IN (SELECT celleid FROM tabel2)
tusind tak
Avatar billede hundevennen Nybegynder
27. april 2006 - 10:28 #21
måske var det michale stim der var først - men jeg deler gerne nogle flere points ud
Avatar billede michael_stim Ekspert
27. april 2006 - 10:30 #22
Hmmm... Havde du bare kigget her:
Kommentar: michael_stim
27/04-2006 09:01:17
Så havde vi sluppet for at gætte os frem i 1½ time ;o)
Avatar billede hundevennen Nybegynder
27. april 2006 - 12:12 #23
tjah livet er hårdt, ik?
Avatar billede hundevennen Nybegynder
27. april 2006 - 12:12 #24
men kom nu med et svar
Avatar billede ldanielsen Nybegynder
27. april 2006 - 14:32 #25
michael_stim var ganske rigtig først, på nær at han ikke vidste at det var to tabeller

Han skal have point synes jeg
Avatar billede michael_stim Ekspert
20. maj 2006 - 09:59 #26
Hovsa
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester