01. april 2005 - 11:25Der er
10 kommentarer og 1 løsning
DELETE en hel kolonne i en JOIN sætning
Jeg har to tabeller, "Kunder" og "Postnumre". Disse har jeg joinet med sætningen: "SELECT * from kunder inner join postnumre ON kunder.postnummer=postnumre.postnr"..og så vidt så godt. Men nu er der to kolonner postnumre, da begge tabeller har en sådan. Den i Kundetabellen hedder "Postnummer" og den i Postnumretabellen hedder "Postnr". Jeg vil så gerne slette den ene af disse, og har derfor tilføjet:"DELETE postnr FROM Postnumre WHERE postnr>1" for at få hele kolonnen Postnr. fra tabellen Postnumre væk. Men så kommer den og klager over syntaksfejl "fordi der mangler en operator". Hvad er der galt med min sætning? Jeg har prøvet mange kombinationer, men ender altid op i denne blindgyde...?
Det er to forskellige sætninger. hvis du bare vil udvælge specielle kolonner skal du skrive kolonnenavnene i stedet for *, eksempelvis SELECT k.navn, k.adresse, k.telefon FROM kunder k
"SELECT kundenummer, firmanavn, adresse, postnummer, budget from kunder inner join postnumre ON kunder.postnummer=postnumre.postnr" Er det sådan du mener? Det giver kun kolonner fra den ene tabel, kunder, så der mangler stadig by kolonnen fra Postnumre tabellen. Postnummer tabellen består af 2 kolonner, BY og Postnr. - og ingen af dem er som sagt med her. Så vi mangler lige at få BY kolonnen til at passe sammen med postnumrene fra Kunder tabellen.
"SELECT kundenummer, firmanavn, adresse, postnummer, budget from kunder, by from postnumre inner join postnumre ON kunder.postnummer=postnumre.postnr"
Så nu er nævnt først de kolonner fra Kunder, som skal med, derefter BY from postnumre, som er den eneste fra postnumre, der skal med. Og så er de joinet. Men den giver alligvel syntaksfejl.
Der var den..! Teepee`s svar 13:50 løste gåden. Tak for det.
Synes godt om
Ny brugerNybegynder
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.