Duplicate Verwijderen met INNER JOIN
Ik heb een SQL statement dat ervoor zorgt dat in twee velden zoekt, als de achternaam niet bestaat zoek dan op de voornaam. Hiervoor heb ik de OR statement gebruikt. Hij werkt prima, het enige probleem is dat er duplicate values voorkomen.
Hoe zou ik mijn SQL statement nou kunnen constructueren?
Zie hieronder SQL
Code (php)
1
2
2
$statement ="SELECT r.VendId,r.Name,r.JobDescription,r.FirstName,r.Initials,r.OfficePhone,r.PrivCountryCode,r.MobilePhone,r.PrivAddr,r.Email ,a.Name,a.Addr,a.PostCode,a.State,a.City
FROM T_VendorRelation r INNER JOIN t_vendoraddress a ON a.VendId = r.VendId WHERE r.FirstName LIKE '%$voornaam%' OR r.Name LIKE '%$voornaam%' AND a.VendId = r.VendId";
FROM T_VendorRelation r INNER JOIN t_vendoraddress a ON a.VendId = r.VendId WHERE r.FirstName LIKE '%$voornaam%' OR r.Name LIKE '%$voornaam%' AND a.VendId = r.VendId";
Gewijzigd op 10/11/2010 11:19:15 door Erwin Nandpersad
ik snap je duplicate values niet helemaal... bedoel je mensen met de zelfde achternaam? mensen waarvan een achternaam ook een voornaam is? mensen met de zelfde voornaam?
icm DISTINCT / GROUP BY?
Ik heb Distinct geprobeert , maar dat werkt niet. De logica is als volgt: Men zoekt in een txtvak een naam, het script zorgt dan automatisch ervoor als er niets in voornaam gevonden is zoek dan in achternaam. Ik wil ervoor zorgen dat de ID's unique blijven. Nu wordt er bijv 2x een record gegeven met hetzelfde ID naam etc etc/ Dit moet 1x zijn. Weet iemand hoe dit gaat?
ik weet niet zeker of het gaat helpen, maar je kunt er ook 2 query's van maken 1 die eerste zoekt naar de voornaam. krijg je niks terug(num rows) dan zoeken op achternaam. misschien werkt dat beter. weet het niet zeker.
Edit:
overigens sluit je daarmee niet uit dat je 2x dezelfde voornaam vindt....
overigens sluit je daarmee niet uit dat je 2x dezelfde voornaam vindt....
Gewijzigd op 10/11/2010 12:27:34 door John D
want wat als nou de voornaam wel bestaat en de achternaam ook? Dan heb je toch een duplicate value, deze methode heb ik al geprobeerd.
Geeft geen duplicate value als de voornaam wel bestaat en de achternaam ook!
want het tweede deel achternaam is null faalt. Dit gaat alleen fout bij 2 of meer dezelfde voornaam.
oke, zal het nogmaals proberen... thxn :-)