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


Inte visa dubletter

Postades av 2004-03-24 11:29:43 - Patrik Ahlberg, i forum sql-server/msde, Tråden har 7 Kommentarer och lästs av 1023 personer

Hej, nu är man här igen och frågar.. blir inte klok på detta :)
Min Log-tabell ser ut på detta sättet ungefär:

<code>ScheduleID RecipientName RecipientGroup ScheduleMedium
45 Patrik Ahlberg Anställda SMS
45 Oscar Jansson Anställda SMS
45 Patrik Ahlberg SMS
46 Rickard Andersson SMS</code>

Osv osv..
Att Patrik finns på två ställen är för att användaren har valt att skicka både till gruppen Anställde och sen valt Patrik från listan av mottagare. Det loggas så men det skickas bara ett sms till Patrik.
När man ska debitera (som om det skulle hända) så ska det alltså bara räknas som om Patrik fått ett sms och inte två. Men hur ska jag göra för att lista alla poster men inte dubletter av Patrik?
Har testat så här utan resultat:

<code>CREATE PROCEDURE selectLogByDate
@CompanyName nvarchar(50),
@StartDate datetime,
@FinishDate datetime
AS
SELECT
DISTINCT RecipientName,
ScheduleID,
RecipientGroup,
ScheduleMedium
FROM
Log
WHERE
CompanyName = @CompanyName AND
LogDate >= @StartDate AND
LogDate <= @FinishDate
ORDER BY
ScheduleID, RecipientGroup DESC
GO</code>


Svara

Sv: Inte visa dubletter

Postades av 2004-03-24 12:24:23 - Mikael Wedham

En DISTINCT tar hela raden, du får med 2 Patrik för att Recipientgroup är olika på dessa poster...

Skippa Recipientgroup så funkar det.

/micke


Svara

Sv: Inte visa dubletter

Postades av 2004-03-24 12:50:43 - Patrik Ahlberg

Hmm, men det måste väl finnas något sett att kolla om namnet redan finns med i samma ScheduleID?
Vill helst inte behöva göra om hela databasmodellen och koda om allt :)


Svara

Sv: Inte visa dubletter

Postades av 2004-03-24 14:05:52 - Mikael Wedham

Du behöver bara ta bort IDt i din Select, inte i databasen!

/m


Svara

Sv: Inte visa dubletter

Postades av 2004-03-24 14:24:15 - Patrik Ahlberg

Jo ok.. får väl göra så men helst skulle jag vilja så att den tog med gruppen också. Den började att ta alla som har grupp och sen om samma namn finns fast utan grupp så skulle den utesluta namnet.
Men det kanske inte går att lösa på något smidigt sett så jag får göra som du sa.
Tack!

Ps.. håller tråden öppen ett litet tag till Ds.


Svara

Sv: Inte visa dubletter

Postades av 2004-03-25 08:47:05 - Kalle Dahlberg

Om alla har minst en rad MED grupp så kan du väl bara utesluta dem utan grupp?


Svara

Sv: Inte visa dubletter

Postades av 2004-03-25 09:47:34 - Patrik Ahlberg

Men det är inte säkert att dom är med i någon grupp.
Där man gör sin schemaläggning så kan man välja att dra in både grupper och mottagare.
Och om man väljer en mottagare som redan finns i en vald mottagargrupp så blir det dubletter som jag vill bli av med.
Eller det ska finnas kvar i logg-tabellen men inte finnas med på debiteringssidan.


Svara

Sv: Inte visa dubletter

Postades av 2004-03-25 11:52:39 - Kalle Dahlberg

Testa:

<code>
SELECT
RecipientName,
ScheduleID,
MAX(RecipientGroup) as RecipientGroup,
ScheduleMedium
FROM
Log
WHERE
CompanyName = @CompanyName AND
LogDate >= @StartDate AND
LogDate <= @FinishDate
GROUP BY RecipientName, ScheduleID, ScheduleMedium
ORDER BY
ScheduleID
</code>

Här får du bara en rad om de är distincta förutom RecipientGroup.


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

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 569 619
27 953
271 709
547
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