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


Inget syns[Avslutad]

Postades av 2002-11-18 19:13:48 - Jesper Thörn, i forum databaser, Tråden har 19 Kommentarer och lästs av 807 personer

Tanken är att jag skall loopa ut händelser ifrån en kolumn som heter "W_weight" men skriver jag min sql-sats så visas inga händelser ifrån den tabellen:
<code>
sql="SELECT n.N_datum, n.N_Id, k.Frukt_id, n.N_namn_id, w.W_weight"& _
" FROM ((Calendar k LEFT JOIN"& _
" Users p ON k.namn_id = p.P_id) LEFT JOIN"& _
" notes n ON (k.namn_id = n.N_namn_id AND k.datum = n.N_datum)) LEFT JOIN "& _
" Weight w on (k.namn_id = w.W_per_id AND k.datum = w.W_date)"&_
" WHERE k.namn_id = " & Id & " AND k.datum = #" & d & "#"
</code>
Men skriver jag däremot endast:
<code>
sql="select * from weight where W_per_id = " & Id & " AND W_date = #" & d & "#"
</code>
Då funkar det!
Hur skall jag formulera sql-satsen för att det skall bli rätt?


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-18 19:21:33 - Andreas Hillqvist

Du kan ju försöka med:

sql = "SELECT n.N_datum, n.N_Id, k.Frukt_id, n.N_namn_id, w.W_weight" & vbCrLf & _
"FROM (Weight w LEFT JOIN" & vbCrLf & _
" Calendar k ON (w.W_per_id = k.namn_id AND w.W_date = k.datum) LEFT JOIN " & vbCrLf & _
" notes n ON k.namn_id = n.N_namn_id AND k.datum = n.N_datum" & vbCrLf & _
"WHERE k.namn_id = " & Id & " AND k.datum = #" & d & "#"


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-18 19:36:11 - Jesper Thörn

Då står det: Syntax error in JOIN operation :-(
Det saknas en parantes någonstans också


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-18 22:17:37 - Andreas Hillqvist

Opps... ;o)

Tagit bort en felaktig parantes:

sql = "SELECT n.N_datum, n.N_Id, k.Frukt_id, n.N_namn_id, w.W_weight" & vbCrLf & _
"FROM (Weight w LEFT JOIN" & vbCrLf & _
" Calendar k ON w.W_per_id = k.namn_id AND w.W_date = k.datum) LEFT JOIN " & vbCrLf & _
" notes n ON k.namn_id = n.N_namn_id AND k.datum = n.N_datum" & vbCrLf & _
"WHERE k.namn_id = " & Id & " AND k.datum = #" & d & "#"


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-18 22:38:45 - Jesper Thörn

Nu syns inga händelser och inget felmeddelande. :-(


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-18 22:56:05 - Jesper Thörn

Nu ändrade jag till detta:
SQL = "SELECT n.Notes,n.N_datum,n.N_Id, k.Frukt_id, n.N_namn_id,w.W_weight" & vbCrLf & _
" FROM (Calendar k LEFT JOIN" & vbCrLf & _
" Weight w ON k.namn_id = w.W_per_id AND k.datum = w.W_date) LEFT JOIN" & vbCrLf & _
" notes n ON k.namn_id = n.N_namn_id AND k.datum = n.N_datum" & vbCrLf & _
" WHERE k.namn_id = " & Id & " AND k.datum = #" & d & "#"

Posterna som ligger i "weight-tabellen" syns om det är någon annan händelse i någon annan tabell med samma datum.

Men inte om det endast är en post på ett visst datum i weight-tabellen.
Konstigt!



Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-19 02:46:31 - Jesper Thörn

Antagligen är jag dum i huvudet men det ända som skall vara lika i samtliga tabeller som skall hämtas är ju datumet och id:t.
Om så är fallet så skall de posterna skrivas ut, en post i weight, notes eller calender så skall detta skrivas ut på aktuellt datum.
De skall inte på annat sätt vara beroende av varandra.
Nu så skrivs weight ut endast om calender har en post med samma kriterier, det är FEL!

Hur gör man det?


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-19 09:07:37 - Andreas Hillqvist

Vill du även få ut poster från notes om det saknas värden för Calendar och Weight?

SQL = "SELECT n.Notes,n.N_datum,n.N_Id, k.Frukt_id, n.N_namn_id,w.W_weight" & vbCrLf & _
" FROM (Calendar k INNER JOIN" & vbCrLf & _
" Weight w ON k.namn_id = w.W_per_id AND k.datum = w.W_date) LEFT JOIN" & vbCrLf & _
" notes n ON k.namn_id = n.N_namn_id AND k.datum = n.N_datum" & vbCrLf & _
" WHERE k.namn_id = " & Id & " AND k.datum = #" & d & "#"



Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-19 18:32:54 - Jesper Thörn

Ja, jag vill få ut alla poster ifrån calender, weight, notes som har samma id och datum. Ingen av tabellerna skall ha något annat gemensamt än att id´t och datumet skall vara de samma.
Låt säga att jag har dessa poster i Arnes loop.(Arne har tex id=22)

2002-11-04
Notes: Här är en dum text...
Weight: 100kg

2002-12-05
Weight: 99kg

2002-12-08
Weight: 98kg
Calender: Tandläkaren

Varje datum skall kunna skriva ut poster ur samtliga tabeller om datumet är det samma.
Har lite svårt att besrkiva, men ni kanske förstår?!

MVH JeppeT


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-19 19:31:35 - Andreas Hillqvist

ÄR det så att alla Weight post skall visas och eventuella Notes och Tandläkaren poster. Eller kan det vara datum utan Weight poster?

SQL = "SELECT n.Notes,n.N_datum,n.N_Id, k.Frukt_id, n.N_namn_id,w.W_weight" & vbCrLf & _
"FROM (Weight w LEFT JOIN" & vbCrLf & _
" Calendar k ON w.W_per_id = k.namn_id AND w.W_date = k.datum) LEFT JOIN" & vbCrLf & _
" notes n ON k.namn_id = n.N_namn_id AND k.datum = n.N_datum" & vbCrLf & _
" WHERE w.W_per_id = " & Id & " AND w.W_date = #" & d & "#"


Eftersom du bara hämtar ut värden för ett datum. Kan det vara enklare att ställa tre fråger iställe. En för varje tabell. Helst om det är så att det saknas en central tabell.


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-19 19:41:06 - Jesper Thörn

Citat:
-"ÄR det så att alla Weight post skall visas och eventuella Notes och Tandläkaren poster. Eller kan det vara datum utan Weight poster?
"

Ja, alla poster skall kunna visas oavsätt om det är någon annan händelse på aktuellt datum.

Vad menar du med central tabell?
Ett datum är det inte heller riktigt, för att recsetet ligger i en loop som loopas ut i en veckokalender.


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-19 19:54:10 - Jesper Thörn

Weights kan stå enskilt, calender kan stå enskilt och notes kan stå enskilt.

Och i alla möjliga grupperingar.

weights, notes
notes,calender,weights
notes
calender,weights
calender
weights
osv...(för att inte vara otydlig) .... ;-)


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-20 15:26:28 - Jesper Thörn

Jag har nu förstått att man måste göra en union på något vis, men jag vet inte vad som är smartast när jag har så många tabeller som jag har.
Antingen unions eller så gör jag flera frågor.
Gör jag flera frågor så kommer det att bli ca 6 stycken för att det kommer att bli flera tabeller än de jag har nämt i tidigare inlägg.

MVH Jesper


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-20 17:30:12 - Andreas Hillqvist

Varför inte göre en fråga för varje tabell?


Svara

Sv: Inget syns[Inte Löst]

Postades av 2002-11-20 22:33:04 - Jesper Thörn

Men om jag lägger till flera tabeller då?
Eventuellt så behöver jag 6 tabeller, kommer det inte att sacka ner mycket då?

Hur blir loopen?

while rs.eof or rs2.eof or rs3.eof

'Det som skall loopas

rs.movenext
rs2.movenext
rs3.movenext
wend

eller
while rs.eof
while rs2.eof
while rs3.eof

'Det som skall loopas
wend
wend
wend

eller hur gör man detta?


Svara

Sv: du letar efter OUTER JOIN, tror jag!

Postades av 2002-11-21 21:09:34 - Ola Lindfeldt

modifiera frågan så du använder: LEFT OUTER JOIN i stället.
Nu kommer alla poster från "huvudtabellen" med (den vänstra/första tabellen i sql-frågan).
Om det saknas relaterade poster kommer de fälten från de tabellerna att innehålla NULL (i stället för att posterna inte kommer med alls).
/Ola


Svara

Sv: du letar efter OUTER JOIN, tror jag!

Postades av 2002-11-21 21:23:39 - Andreas Hillqvist

Om jag har förståt det rätt saknas det en huvudtabell. Det kan finnas poster för ett datum i olika kombinationer i det olika tabellerna. Det är det som är problemet.


Svara

Sv: du letar efter OUTER JOIN, tror jag!

Postades av 2002-11-25 19:01:52 - Jesper Thörn

Andreas: Rätt tänkt, finns det något jag kan göra åt det?


Svara

Sv: du letar efter OUTER JOIN, tror jag!

Postades av 2002-11-25 19:26:24 - Andreas Hillqvist

Savret har du ju i din andra tråd. ;o)


Svara

Sv: FULL OUTER JOIN?

Postades av 2002-11-25 22:00:02 - Ola Lindfeldt

se här:
http://www.sqlpass.org/news/newsletter/2001-12.cfm#5


Svara

Nyligen

  • 18:37 Remove the bumper in AUDI
  • 15:35 Chicken road crash game
  • 21:41 Automotive Services UK
  • 20:44 Erfarenhet av CBD-olja mot sömnpro
  • 12:13 Sex Dolls for Sale
  • 19:42 Online Casinos for Haitian Players
  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов

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 889
27 965
271 778
438
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