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


MS SQL hämta ut en rad som är unik men som är MAX i en group by

Postades av 2007-04-20 14:29:14 - Anders Malmgren, i forum databaser, Tråden har 2 Kommentarer och lästs av 1301 personer

<code>
SELECT voteCategories.title, MAX(DISTINCT votes.count) AS voteCount, MAX(DISTINCT votes.articleId) AS articleId
FROM voteCategories INNER JOIN
votes ON voteCategories.id = votes.voteCategoryId
GROUP BY voteCategories.id, voteCategories.title
ORDER BY voteCount
</code>

Denna kod funkar inte... Bara ett exempel

jag har två tabeller
voteCategories
och votes

voteCategories innehåller bara två fält, id och title (id på kategori och namn på kategori)
votes innehåller id, articleId, voteCategoryId och count (articleId är vilken artikel som röstningen hör till, voteCategoryId vilken vategori röstningne hör till samt hur många som röstat på denna artikel för denna röstkategori

Vad jag nu vill göra är att slumpa En röstkategori och få ut artikeln som leder denna kategori.

Queryn ovan hämtar ut max counten för varje kategori, men hur hämtar jag ut articelId som hör till den counten? MAX() kommer ju vara returnera det Id som är högst. inte som är kopplat till counten

Tack på förhand, Anders


Svara

Sv: MS SQL hämta ut en rad som är unik men som är MAX i en group by

Postades av 2007-04-20 15:15:35 - Johan Djupmarker

Jag tolkar det som att du bara vill ha ut detta för ett visst voteCategoryId? I sådana fall borde detta fungera:

SELECT TOP 1 voteCategories.title, votes.count AS voteCount, votes.articleId
FROM voteCategories INNER JOIN
votes ON voteCategories.id = votes.voteCategoryId
WHERE voteCategories.id = 1
ORDER BY voteCount DESC

/Johan


Svara

Sv:MS SQL hämta ut en rad som är unik men som är MAX i en group by

Postades av 2007-04-20 16:04:42 - Anders Malmgren

såhär blev den.. tror den är bra

<code>

SELECT leader.*, MIN(categories.title) AS categoryTitle, MIN(categories.type) AS categoryType, MAX(persons.name) AS personName
FROM (
SELECT TOP 1 articles.id, articles.publishDate, articles.title, articles.headTitleId, articles.pathTitle, votes.count AS voteCount, voteCategories.title AS voteCategoryTitle
FROM articles
INNER JOIN votes ON votes.articleId = articles.id
INNER JOIN voteCategories ON votes.voteCategoryId = voteCategories.id
WHERE articles.publishDate >= @publishDate AND (votes.voteCategoryId =
(SELECT TOP 1 id
FROM voteCategories AS randomVoteCat
ORDER BY NEWID())) AND articles.activeStatus = @activeStatus
ORDER BY voteCount DESC, articles.title) AS leader
INNER JOIN articleContexts ON leader.id = articleContexts.articleId
LEFT OUTER JOIN persons ON articleContexts.personId = persons.id
LEFT OUTER JOIN categories ON articleContexts.categoryId = categories.id
GROUP BY leader.id, leader.publishDate, leader.title, leader.headTitleId, leader.pathTitle, leader.voteCount, leader.voteCategoryTitle
</code>


Svara

Nyligen

  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak
  • 16:14 Vem anlitar man egentligen när tak
  • 16:13 Vem anlitar man egentligen när tak
  • 11:52 Noen erfaring med uttak hos Mostbe
  • 11:51 Noen erfaring med uttak hos Mostbe

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 573
27 958
271 741
5 909
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