|
| Relation mellem to felter i DB Fra : Jacob .. |
Dato : 28-01-04 22:08 |
|
Jeg ved at dette ikke er en desideret database, men jeg kan ikke
connecte til database-NG'en.
Jeg har to tabeller:
1) tblPerson (Felter: ID & Navn)
2) tblArtikler (Felter ArtID & ArtNavn)
Når en person skriver en artikel, får artiklen et ArtID og den
pågældene persons navn føres i tblArtikler ArtNavn.
Kan jeg i tblPerson lave et felt der hedder ArtAntal som tæller
alle ArtID'er med den der har samme Navn som ArtNavn?
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jørn Andersen (29-01-2004)
| Kommentar Fra : Jørn Andersen |
Dato : 29-01-04 15:19 |
|
On Wed, 28 Jan 2004 21:07:54 +0000 (UTC), Jacob .. <laessoe@yahoo.com>
wrote:
>Jeg har to tabeller:
>1) tblPerson (Felter: ID & Navn)
>2) tblArtikler (Felter ArtID & ArtNavn)
>
>Når en person skriver en artikel, får artiklen et ArtID og den
>pågældene persons navn føres i tblArtikler ArtNavn.
Jeg er lidt i tivl om, hvorvidt artNavn *kun* indeholder forfatterens
navn eller også artiklens navn?
Det vil være smartest at have et relateret felt i tblArtikler, som
henviser direkte til tblPerson.ID.
altså: tblArtikler (Felter: ArtID, ArtNavn, PersonId)
>Kan jeg i tblPerson lave et felt der hedder ArtAntal som tæller
>alle ArtID'er med den der har samme Navn som ArtNavn?
Nej, du skal lave det som en forespørgsel - noget i retning af:
SELECT DISTINCTROW tblPerson.PersonId, tblPerson.PersonNavn, Count(*)
AS [AntalArtikler]
FROM tblPerson INNER JOIN tblArtikler ON tblPerson.PersonId =
tblArtikler.PersonId
GROUP BY tblPerson.PersonId, tblPerson.PersonNavn;
Den vil vise 3 felter: PersonId, PersonNavn, AntalArtikler
(Ret selv lige navnene til - de er kopieret fra et eksempel i Access.)
Good luck!
--
Jørn Andersen,
Brønshøj
| |
Jacob Læssøe Nielsen (29-01-2004)
| Kommentar Fra : Jacob Læssøe Nielsen |
Dato : 29-01-04 21:43 |
|
> Nej, du skal lave det som en forespørgsel - noget i retning af:
> SELECT DISTINCTROW tblPerson.PersonId, tblPerson.PersonNavn, Count(*)
> AS [AntalArtikler]
> FROM tblPerson INNER JOIN tblArtikler ON tblPerson.PersonId =
> tblArtikler.PersonId
> GROUP BY tblPerson.PersonId, tblPerson.PersonNavn;
Den virkede ikke - alle de relationer har gjort mig helt rundtosset!
Forsøger igen i morgen.
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system ( http://www.grisoft.com).
Version: 6.0.571 / Virus Database: 361 - Release Date: 26-01-2004
| |
Jørn Andersen (29-01-2004)
| Kommentar Fra : Jørn Andersen |
Dato : 29-01-04 22:28 |
|
On Thu, 29 Jan 2004 15:19:22 +0100, Jørn Andersen <jorn@jorna.dk>
wrote:
>On Wed, 28 Jan 2004 21:07:54 +0000 (UTC), Jacob .. <laessoe@yahoo.com>
>wrote:
<snip>
>>Kan jeg i tblPerson lave et felt der hedder ArtAntal som tæller
>>alle ArtID'er med den der har samme Navn som ArtNavn?
>
>Nej, du skal lave det som en forespørgsel - noget i retning af:
>SELECT DISTINCTROW tblPerson.PersonId, tblPerson.PersonNavn, Count(*)
>AS [AntalArtikler]
>FROM tblPerson INNER JOIN tblArtikler ON tblPerson.PersonId =
>tblArtikler.PersonId
>GROUP BY tblPerson.PersonId, tblPerson.PersonNavn;
>
>Den vil vise 3 felter: PersonId, PersonNavn, AntalArtikler
>(Ret selv lige navnene til - de er kopieret fra et eksempel i Access.)
Det er vist ikke specielt klart, men forudsætningen er, at der er to
tabeller:
tblPerson:
PersonId
PersonNavn
tblArtikler:
PersonId
ArtikelNavn
PersonId
Good luck!
--
Jørn Andersen,
Brønshøj
| |
|
|