Toon posts:

[SQL & ASP] Meerdere tabellen uitlezen met zelfde kolommen

Pagina: 1
Acties:
  • 104 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik zit met een klein SQL probleempje. Ik heb 2 database tabellen, met precies het zelfde ontwerp qua kolommen. Nu wil ik deze 2 tabellen met één connectie uitlezen:
code:
1
SQL = "SELECT TOP 1 tbl_1.*,tbl_2.* From tbl_1,tbl_2 Order by tbl_1.ID DESC,tbl_2.ID DESC;"
Tot dus ver niet zo moeilijk.

Maar hoe kan ik dan zeggen dat hij bijv. de kolom 'datum' uit tbl_2 moet halen ipv. tbl_1 ?

Kortom, hoe kan ik zo de tabellen van elkaar onderscheiden?

[ Voor 14% gewijzigd door Verwijderd op 28-12-2002 19:45 ]


Verwijderd

Door de tabelnaam ervoor te zetten. Voorbeeld:
code:
1
2
SELECT tbl_2.datum, tbl_1.*
FROM tbl_2, tbl_1

Verwijderd

Topicstarter
zo bedoel ik het niet, er zijn 2 tabellen met exact de zelfde kolommen. En op de bewuste pagina moet eerst de 'datum' uitgelezen worden uit tabel2 en dan uit tabel1 en visa versa.... Dus maar één kollom selecteren is geen optie.

Verwijderd

ofwel je moet er nog een tbl_1.datum bij zetten, of je legt je probleem niet goed uit. In dat tweede geval raad ik je aan wat vooorbeeldgegevens te geven, en vervolgens wat je als resultaat wil hebben.

Edit:
Of bedoel je dat je niet weet hoe je de gegevens van uit elkaar moet houden bij het uitlezen, omdat ze dezelfde naam hebben? In dat geval kan je met AS datum1 een alias aanmaken voor de kolom, zodat je ze via de alias kan onderscheiden.

[ Voor 39% gewijzigd door Verwijderd op 28-12-2002 19:57 ]


Verwijderd

Topicstarter
Verwijderd schreef op 28 December 2002 @ 19:54:
ofwel je moet er nog een tbl_1.datum bij zetten, of je legt je probleem niet goed uit. In dat tweede geval raad ik je aan wat vooorbeeldgegevens te geven, en vervolgens wat je als resultaat wil hebben.

Edit:
Of bedoel je dat je niet weet hoe je de gegevens van uit elkaar moet houden bij het uitlezen, omdat ze dezelfde naam hebben? In dat geval kan je met AS datum1 een alias aanmaken voor de kolom, zodat je ze via de alias kan onderscheiden.
Kan je dat laatste (na de edit) eens beter uitleggen.... Alsjeblieft? (dat bedoel ik namelijk)

Verwijderd

SQL:
1
2
3
4
5
SELECT 
   tbl_2.datum AS datum2, 
   tbl_1.datum AS datum1
FROM 
   tbl_2, tbl_1

Dan kun je dus datum1 en datum2 gebruiken om naar de kolommen te verwijzen.

Verwijderd

Topicstarter
Verwijderd schreef op 28 December 2002 @ 20:28:
SQL:
1
2
3
4
5
SELECT 
   tbl_2.datum AS datum2, 
   tbl_1.datum AS datum1
FROM 
   tbl_2, tbl_1

Dan kun je dus datum1 en datum2 gebruiken om naar de kolommen te verwijzen.
Hoe precies? :+

ASP:
1
Response.write(datum2)
of
ASP:
1
Response.write(dbconnectie("datum2"))

Alvast bedankt :)

PS: Wat nu als je 20 kolommen hebt?

[ Voor 7% gewijzigd door Verwijderd op 28-12-2002 20:33 ]


Verwijderd

Het is een SQL aanpassing, waardoor dus het resultaat van de query anders is (andere kolomnamen), dus heten de kolommen in de recordset anders.

En met 20 kolommen met dezelfde namen moet je dus 20 keer AS gebruiken.

Ik zou zeggen: expirimenteer een beetje ... daar leer je het meeste van.

Verwijderd

Topicstarter
Verwijderd schreef op 28 december 2002 @ 20:37:
Ik zou zeggen: expirimenteer een beetje ... daar leer je het meeste van.
Ben bezig :) - Bedankt tot dus ver!

Verwijderd

Topicstarter
Verwijderd schreef op 28 december 2002 @ 20:37:
Het is een SQL aanpassing, waardoor dus het resultaat van de query anders is (andere kolomnamen), dus heten de kolommen in de recordset anders.

En met 20 kolommen met dezelfde namen moet je dus 20 keer AS gebruiken.

Ik zou zeggen: expirimenteer een beetje ... daar leer je het meeste van.
Mooi man! het werkt! Heel erg bedankt!

  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Je kan overigens ook onderstaande gebruiken (uitleg)
ASP:
1
2
Response.write(dbconnectie(0))
Response.write(dbconnectie(1))

Vind het persoonlijk niet overzichtelijk, maar het is altijd handig om te weten wat er allemaal mogelijk is met je ADO objectjes.

Today's subliminal thought is:


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 11:06
Waarvoor ga je dit nou eigenlijk gebruiken? Waarom heb je 2 dezelfde tabellen, meestal is dit namelijk niet nodig.

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Union.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 11:06
Was dat nou het antwoord op mijn vraag of was dat anders bedoeld, vind het zomaar een rare constructie namelijk.

Verwijderd

Topicstarter
djluc schreef op 29 december 2002 @ 17:20:
Waarvoor ga je dit nou eigenlijk gebruiken? Waarom heb je 2 dezelfde tabellen, meestal is dit namelijk niet nodig.
Bezig met content systeem aan het ontwikkelen, meerdere tabellen openen op 1 pagina, sommige tabellen hebben precies de zelfde configuratie qua kolommen

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 11:06
Waarom haal je die gegevens uit meerdere tabellen, wat is het verschil daar tussen als de tabellen hetzelfde zijn?

Verwijderd

Topicstarter
djluc schreef op 29 december 2002 @ 21:16:
Waarom haal je die gegevens uit meerdere tabellen, wat is het verschil daar tussen als de tabellen hetzelfde zijn?
De tabellen worden onafhankelijk ge-update... Hoe zou je het anders willen doen dan?

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 26-08 11:55

Crazy D

I think we should take a look.

Verwijderd schreef op 29 december 2002 @ 21:17:
De tabellen worden onafhankelijk ge-update... Hoe zou je het anders willen doen dan?
Als de tabellen dezelfde kolommen hebben (veld1, veld2, etc), wat is dan het verschil tussen die 2? (oftewel, waarom niet 1 tabel met een extra veld wat een type (oid) aangeeft).

Exact expert nodig?


  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 11:06
Das wat ik bedoel...
Pagina: 1