Avatar billede hebo Nybegynder
04. oktober 2002 - 13:40 Der er 12 kommentarer og
1 løsning

Køre en Query på en query

Hvad er syntaxen hvis jeg skal køre en query på en query.
Problemet er at de resultater jeg skal bruge kan jeg ikke få ved kun en query.
SÅ jeg laver først en query med et sæt resultater og af den skal jeg køre flere andre querys

Jeg går ud fra at det er FROM sætningen det skal være i
Avatar billede teepee Nybegynder
04. oktober 2002 - 13:43 #1
select * from (select * from tabel t where t.kolonne = ..) sq
where sq.kolonne..
Er det det du mener, at lave et inline view?
Avatar billede terry Ekspert
04. oktober 2002 - 13:44 #2
IF we are talking Access then it is exactly the same as if it were a table
Avatar billede terry Ekspert
04. oktober 2002 - 13:45 #3
perhaps I should have read the question first :o)
Avatar billede hebo Nybegynder
04. oktober 2002 - 13:53 #4
nej ikke en query i en query.
men en query på en en query.
Først laver jeg query1.
Select * from database.db where værdi1 = værdi2 group by noget.
Derefter vil jeg gøre noget lignende det her
select * from Query1 group by værdi1
Avatar billede terry Ekspert
04. oktober 2002 - 13:57 #5
hebo>Ig that is what you want to do then you just replace the table name with the query name, so my first answer is correct :o)

SELECT * FROM YourQuery.....
OR
SELECT * FROM YourTable.....

they are exactly the same
Avatar billede hebo Nybegynder
04. oktober 2002 - 14:00 #6
i have tried that and it says that it cant find query.db or query.dbf etc.
It thinks that it should look for a file
Avatar billede benny.dk Nybegynder
04. oktober 2002 - 14:02 #7
Du smider resultatet fra den først query over i en variabl og indholdet af denne variabel er en tabel som har de records som du ønskede med de felter du har ønsket. Du laver så query to på denne 'tabel'.

$query1 = (select * from tabel1)
$query2 = (select * from $query1)
Avatar billede terry Ekspert
04. oktober 2002 - 14:02 #8
what database are you using? I have a feeling that what ever you are using has its tables saved as files in which case it will NOT be able to find it!
I suggest you use teepee's solution wheich should give you waht you want!
Avatar billede hebo Nybegynder
04. oktober 2002 - 14:15 #9
ok...i guess i have to explain more
I use delphi 5 to make querys on some paradox databases.
I call the first query for "query1". then it will create a table in memory which contains the results.
The i need to run Query2 and use the results from query1 to create the results for query2.
No matter what i put in the "FROM" it thinks it should use a table on disk, but it should use the query1results
Avatar billede terry Ekspert
04. oktober 2002 - 14:17 #10
sorry I cant help you, I know NOTHING about Delphi+Paradox
Avatar billede teepee Nybegynder
04. oktober 2002 - 14:20 #11
Umiddelbart har jeg aldrig hørt om at man kan lave en søgning i et søgeresultat, men man kan da ihvertfald lave en søgning baseret på en tilsvarende søgning. Men hvis du mener man kan i delphi så held og lykke med det. Måske skulle du bare lave en temporær tabel og smide resultatet over i, eller endnu bedre, smid resultat over i tabellen og fremsøg alt i første omgang, dernæst kan du lave en søgning i den temporære tabel og begrænse dit resultat
Avatar billede hebo Nybegynder
04. oktober 2002 - 14:25 #12
hmm....det er jo det jeg prøver at undgå...men det kan være at jeg bliver nødt til det.
Det må da kunne lade sig gøre en tabel i hukommelsen er jo det samme som en på disk. Queryen skal bare vide hvor den skal kigge.
Avatar billede hebo Nybegynder
04. oktober 2002 - 15:20 #13
jeg må prøve noget andet
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