[mysql] select probleem

Pagina: 1
Acties:

  • Duinkonijn
  • Registratie: Augustus 2001
  • Laatst online: 29-08 15:57
Hoi ik heb een probleem met selecteren uit me DB
ik wil 2 numurieke tabellen vergelijken
en daar appart uit hebben wat er in elk verschilt

ik heb nu

code:
1
Select rij1 from huidig,update where rij1 != rij2 group by rij1


en

code:
1
Select rij2 from huidig,update where rij2 != rij1 group by rij2



maar dit werkt niet op de 1 of andere manier

heb al de search door gewerkt
maar zie geen optie

Het is makkelijk om iemand zijn negatieve eigenschappen te benoemen, maar kan je ook de positieve eigenschappen benoemen?


  • DiNo!
  • Registratie: Juni 2000
  • Laatst online: 29-08 19:02
werkt <> in plaats van != wel?

https://github.com/atoomnetmarc/


  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

Handig die documentatie ;)

http://www.mysql.com/docu....html#Non-typed_Operators

Maar goed. hoe weet je query nou uit welke tabel hij rij1 en rij2 moet halen?

Select a.rij1 from huidig as a,update as b where a.rij1 != b.rij2 group by a.rij1

  • Duinkonijn
  • Registratie: Augustus 2001
  • Laatst online: 29-08 15:57
DiNo7 schreef op 06 november 2002 @ 12:05:
werkt <> in plaats van != wel?
zelfde resultaat

het probleem is dat hij laat dus alles zien

Het is makkelijk om iemand zijn negatieve eigenschappen te benoemen, maar kan je ook de positieve eigenschappen benoemen?


  • Duinkonijn
  • Registratie: Augustus 2001
  • Laatst online: 29-08 15:57
Bosmonster schreef op 06 november 2002 @ 12:10:
Handig die documentatie ;)

http://www.mysql.com/docu....html#Non-typed_Operators

Maar goed. hoe weet je query nou uit welke tabel hij rij1 en rij2 moet halen?

Select a.rij1 from huidig as a,update as b where a.rij1 != b.rij2 group by a.rij1
tabel huidig bevat alleen rij1
tabel update bevat alleen rij2

naam geving is een beetje irri geloof ik

Het is makkelijk om iemand zijn negatieve eigenschappen te benoemen, maar kan je ook de positieve eigenschappen benoemen?


  • Dido
  • Registratie: Maart 2002
  • Laatst online: 29-08 18:04

Dido

heforshe

Je zult je eerst af moeten vragen WAT er verschilt. Als je twee kolommen hebt:
1 1
2 3
3 4
4 5
Dan is 1 [i]verschillend van de 3 uit kolom twee, dus wordt die getoond!!

Je moet eerst aangeven wat met wat moet worden vergeleken, bijvoorbeeld door het toevogen van een UID aan beide tabellen, en dan een WHERE a.UID = B.UID toevoegen. Maar dan gaat het nog fout als er ergens een waarde "ontbreekt".

Wat jij wilt, is gewoon een simpele balance-line, en die zou ik niet in SQL proberen te doen normaliter.

Wat eventueel kan is iets als dit:
code:
1
2
3
4
5
6
7
SELECT *
  FROM huidig
 WHERE rij1 NOT IN SELECT ( rij2 FROM update)
UNION
SELECT *
  FROM update
 WHERE rij2 NOT IN SELECT ( rij1 FROM huidig)

Maar dat kan misschien niet met jouw MySQL?

Wat betekent mijn avatar?


  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
Je moet nog wel op een of andere manier bepalen welke records uit tabel huidig en update bij elkaar horen. Vervolgens kun je dan kijken of ze ongelijk zijn aan elkaar.
Als je bijvoorbeel in beide tabellen een artikelid hebt dan moet je dus nog een extra filter toevoegen op artikelid.
Je krijgt dan bijv. zoiets:
code:
1
2
3
4
select rij1
from huidig,update
where huidig.artikelid = update.artikelid
and rij1 != rij2

Never underestimate the power of


  • Duinkonijn
  • Registratie: Augustus 2001
  • Laatst online: 29-08 15:57
mm ben nu zo ver dat ik er een ODBC aan gehangen heb met access er aan
daar heb ik alle nummers er uit getrokken die in beide tabelen bestonden

ga nu wel met de hand filteren

Dido ik heb dat commando van je geprobeerd maar me sql slikt het idd niet

Het is makkelijk om iemand zijn negatieve eigenschappen te benoemen, maar kan je ook de positieve eigenschappen benoemen?


  • cameodski
  • Registratie: Augustus 2002
  • Laatst online: 06-11-2023
Duinkonijn schreef op 07 november 2002 @ 08:10:
ga nu wel met de hand filteren
Dat is jammer, want nu ga je onnodig dataverkeer genereren en dus het geheel onnodig traag maken, terwijl het hoogstwaarschijnlijk een vrij eenvoudige query is.

Never underestimate the power of


  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

verander de tabelnaam update even in een andere naam. Update is een reserved word.
Aangezien een relationele DB geen volgorde kent, kan je dus ook niet over de volgorde van de records in de tabel spreken. Je kan met een ORDER BY wel een volgorde afdwingen in de presentatie.

  • Duinkonijn
  • Registratie: Augustus 2001
  • Laatst online: 29-08 15:57
Goodielover schreef op 08 november 2002 @ 12:01:
verander de tabelnaam update even in een andere naam. Update is een reserved word.
Aangezien een relationele DB geen volgorde kent, kan je dus ook niet over de volgorde van de records in de tabel spreken. Je kan met een ORDER BY wel een volgorde afdwingen in de presentatie.
ik gaf fictieve tabel namen

ik ga woensdag wel ff verder klooien
of niet ... als me collega het al gefixed heeft

Het is makkelijk om iemand zijn negatieve eigenschappen te benoemen, maar kan je ook de positieve eigenschappen benoemen?

Pagina: 1