Jag försöker bygga en sp som ska hämta ca 15-20 poster från en tabell varje gång. Beroende på om en bit är satt eller inte i varje post så ska ett relaterat värde hämtas från en annan tabell (join, subquery eller liknande), men det är alltså olika tabeller beroende på om biten är satt eller inte. Eftersom uppdragsgivaren ändrade sig (igen!) så är detta inte aktuellt längre, men om någon har lust att svara kan det ju alltid vara bra att veta till en annan gång... Hoppas det är någon annan som bestämt datastrukturen. För man ska ju inte göra på detta vis. Men man kan ju lösa det: > Har för mig att jag har sett något exempel med en IF-ELSE-sats som körs för varje post (med cursor?), men kan inte hitta det igen... Men det kanske är en sämre lösning? Nu är det iofs inte aktuellt längre, men hur borde man göra om man hamnar i samma situation igen? Kanske är lite svårt att få helheten, men jag ska iaf försöka förklara... Ska de visas tillsammans hade jag antagligen gjort en union på dem, möjligen sparat denna som en vy för enkelhetens skull om man t ex har ett gäng utvecklare som ska ställa frågor mot den och då bara vill ha en tabell att fråga.Loopa igenom rs, cursor?
Ett sätt att lösa detta på är ju att skapa en temprär tabell och köra två select mot den ursprungliga tabellen (en med WHERE min_bit = 0 och en med = 1), men finns det någon bättre lösning? Har för mig att jag har sett något exempel med en IF-ELSE-sats som körs för varje post (med cursor?), men kan inte hitta det igen... Men det kanske är en sämre lösning?
/JohanSv: Loopa igenom rs, cursor?
/JohanSv: Loopa igenom rs, cursor?
SELECT CASE Flaga WHEN 0 THEN B.Value WHEN 1 THEN C.Value ELSE Null END
FROM A LEFT JOÌN
B ON A.SubID = B.ID LEFT JOÌN
C ON A.SubID = C.IDSv: Loopa igenom rs, cursor?
Som någon av SQL Server MVP:erna brukar uttrycka sig: Cursors är bra om man inte kan T-SQL. :)
Andreas SET-baserade lösning var bra, och han har dessutom helt rätt i att databasen absolut inte ska designas på det sättet.Sv: Loopa igenom rs, cursor?
Applikationen registrerar transporter och dessa registreras i en tabell. Transporterna kan ske från två olika typer av objekt, antingen från platser som registreras i denna databasen, eller från platser som hämtas ur en tabell ur ett CRM-system. För övrigt är det samma sak som registreras för varje transport. Överallt presenteras dessa olika typer transporter var försig, men på ett ställe ska de visas tillsammans (det rör sig om 15-20 poster itaget).
Ska man spara transporterna i olika tabeller och sammanställa i en temp-tabell/union-select? Hur anser "de lärda" att man ska göra? ;)
/JohanSv: Loopa igenom rs, cursor?