Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


hämta från 3 tabeller samtidigt??

Postades av 2004-04-25 16:45:37 - Eddy Österberg, i forum asp - allmänt, Tråden har 1 Kommentarer och lästs av 423 personer

Sitter fortfarande och funderar på hur mitt webbaserade faktura program ska fungerar ?? har gjort så ett tag nu...

kommit fram till följande tabeller:

tbl_foretag
foretag_id
Namn
Ref_pers
...

tbl_artiklar
artikel_id
benamning
pris
beskrivning

tbl_kunder
kund_id
namn
adress
ref_pers
...

tbl_fakturor
faktura_id
kund_id_id
foretag_id

tbl_faktura_artiklar
faktura_id
id


Men nu när jag ska skriva ut en faktura så måste jag ju titta i tbl_fakturor och sedan hämta data om avsändar företaget (tbl_foretag) samt kunden (tbl_kunder) och även alla artiklar som ska finnas med på fakturan och dessa finns ju i tbl_faktura_artiklar.

Så hur ska man skriva sql'en för att plocka ut allt detta? eller måste man ha flera sql satser???

Har jag helt fel upplägg på det hela, tacksam för tips innan jag försöker göra något praktiskt av detta!!

Mvh


Svara

Sv: hämta från 3 tabeller samtidigt??

Postades av 2004-04-27 00:10:01 - Andreas Hillqvist

JAg vill först föreslå att du använder unika fältnamn i databasen. Underlättar arbetet med joins. Förslagsvis:

tblKunder
KundId
KundNamn
KundAdress
KundRef
...

tblForetag
ForetagId
ForetagNamn
ForetagRef
...

tblFakturor
FakturaId
FakturaAdress
FakturaKund -> tblKunder.KundId
FakturaForetag -> tblForetag.ForetagId

tblArtiklar
ArtikelId
ArtikelPris
ArtikelBenamning
ArtikelBeskrivning

tblFakturaArtiklar
FakturaArtiklarId
FakturaArtiklarFaktura -> tblFakturor.FakturaId
FakturaArtiklarArtikel -> tblArtiklar.ArtikelId
FakturaArtiklarPris
FakturaArtiklarAntal

Jag tycker om at använda Left Joins. Det gäller att först identifiera från vilken tabell du vill hämta data. Ofta kan det vara bra att dela up det i flera fråger beroende på strukturen.

Jag föreslår två fråger:
qryFaktura
<code>
strSQL = "SELECT tblFakturor.*, tblForetag.ForetagsNamn, tblForetag.ForetagsRef, tblKunder.KundNamn AS KundNamn, tblKunder.KundAdress, tblKunder.KundRef" & vbCrLf & _
"FROM tblFakturor LEFT JOIN " & vbCrLf & _
" tblForetag ON tblFakturor.FakturaForetag = tblForetag.ForetagId LEFT JOIN " & vbCrLf & _
" tblKunder ON tblFakturor.FakturaKund = tblKunder.KundId" & vbCrLf & _
"WHERE tblFakturor.FakturaId = 123"
</code>

qryFakturArtiklar
<code>
strSQL = "SELECT tblFakturaArtiklar.*, tblArtiklar.ArtikelPris, tblArtiklar.ArtikelBenamning, tblArtiklar.ArtikelBeskrivning" & vbCrLf & _
"FROM tblFakturaArtiklar LEFT JOIN " & vbCrLf & _
" tblArtiklar ON tblFakturaArtiklar.FakturaArtiklarArtikel = tblArtiklar.ArtikelId" & vbCrLf & _
"WHERE tblFakturaArtiklar.tblFakturaArtiklarFaktura = 123"
</code>


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 786
27 960
271 761
5 842
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies