Toon posts:

[access/sql] kolom toevoegen in querie

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

Verwijderd

Topicstarter
ik voeg twee kolommen samen via union, maar nu wil ik bij elk record meegeven uit welke tabel ze afkomstig zijn,
dit dacht ik te doen door een kolom toe te voegen aan de tabel met een default waarde, maar helaas dit werkt niet... ik kan op internet ook nergens info vinden die dit specifieke probleem oplost, wie helpt?

code:
1
2
3
4
5
6
7
ALTER TABLE Customers ADD Origin varchar(30)
SELECT Customers.CompanyName,Customers.Address,Customers.City,Customers.Country
FROM Customers
UNION 
SELECT Suppliers.CompanyName,Suppliers.Address,Suppliers.City,Suppliers.Country
FROM Suppliers
ORDER BY  Customers.Country,Customers.City

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 19-05 21:24

NMe

Quia Ego Sic Dico.

Is het geen optie om sowieso één tabel van de twee tabellen te maken, die je bijvoorbeeld Companies noemt, en waar je één extra veld opneemt om aan te geven of het leveranciers of klanten zijn? Of zijn de tabellen fundamenteel anders?

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • PaulZ
  • Registratie: Augustus 2004
  • Laatst online: 21-05-2024
Maak een nieuwe tabel aan met de juiste velden en voeg de waarden uit de query toe.

Dit zou 't moeten doen...

INSERT INTO NIEUWETABEL ( TableOrigin, CompanyName, Address, City, Country )
SELECT "Customers" AS TableOrigin, Customers.CompanyName,Customers.Address,Customers.City,Customers.Country
FROM Customers
UNION
SELECT "Suppliers" AS TableOrigin, Suppliers.CompanyName,Suppliers.Address,Suppliers.City,Suppliers.Country
FROM Suppliers
ORDER BY Customers.Country,Customers.City

Vlinders moet je volgen, niet vangen...


Verwijderd

Topicstarter
PaulZ schreef op 02 november 2004 @ 21:08:
Maak een nieuwe tabel aan met de juiste velden en voeg de waarden uit de query toe.

Dit zou 't moeten doen...

INSERT INTO NIEUWETABEL ( TableOrigin, CompanyName, Address, City, Country )
SELECT "Customers" AS TableOrigin, Customers.CompanyName,Customers.Address,Customers.City,Customers.Country
FROM Customers
UNION
SELECT "Suppliers" AS TableOrigin, Suppliers.CompanyName,Suppliers.Address,Suppliers.City,Suppliers.Country
FROM Suppliers
ORDER BY Customers.Country,Customers.City
maar dan moet ik een hele nieuwe tabel aanmaken... kan toch beter 1kolom toevoegen?

Verwijderd

Topicstarter
NMe84 schreef op 02 november 2004 @ 19:53:
Is het geen optie om sowieso één tabel van de twee tabellen te maken, die je bijvoorbeeld Companies noemt, en waar je één extra veld opneemt om aan te geven of het leveranciers of klanten zijn? Of zijn de tabellen fundamenteel anders?
tabellen zijn fundamenteel anders, en maken deel uit van een veel groter geheel ..

  • bigbeng
  • Registratie: Augustus 2000
  • Laatst online: 26-11-2021
Je zou met de query van PaulZ en een beetje fantasie al een aardig eind moeten kunnen komen.

Ik zal het toch nog even erboven op leggen voor het geval dat onderdeel 2 van de voorwaarden teveel gevraagd is ;)

code:
1
2
3
4
5
SELECT <de velden die je wilt>, "customer" as origin
FROM customers
UNION
SELECT <de velden die je wilt>, "supplier" as origin
FROM suppliers

Verwijderd

Topicstarter
bigbeng schreef op 02 november 2004 @ 23:40:
Je zou met de query van PaulZ en een beetje fantasie al een aardig eind moeten kunnen komen.

Ik zal het toch nog even erboven op leggen voor het geval dat onderdeel 2 van de voorwaarden teveel gevraagd is ;)

code:
1
2
3
4
5
SELECT <de velden die je wilt>, "customer" as origin
FROM customers
UNION
SELECT <de velden die je wilt>, "supplier" as origin
FROM suppliers
ik had het inmiddels zelf ook bedacht, en toen mezelf hard voor mijn kop geslagen... hoe simpel, maar het vreemde is dat ik het op het internet eigenlijk nergens ben tegengekomen ..
Pagina: 1