2011-03-08 22 views
5

Oluşturma tarihini içeren creation_date adında bir sütunu olan common_ticket adlı bir biletim var.SQL sorgusuyla haftada oluşturulmuş biletlerin dönüş numarası

Geçtiğimiz birkaç ay boyunca her hafta kaç bilet oluşturulduğunu saymak istiyorum. Böyle bir bilgi vermek için bir SQL sorgusu yazarken sorun yaşıyorum. Her bir hafta için ayrı bir sayı olduğu sürece, nasıl iade edilir gerçekten önemli değildir.

Bunun nasıl yapılacağı konusunda herhangi bir fikri var mı? gibi

cevap

12

şey:

 
SELECT extract(week from creation_date), 
     extract(year from creation_date), 
     count(*) 
FROM tickets 
GROUP BY extract(week from creation_date), 
     extract(year from creation_date) 
+0

Bu benim sayesinde, gereken ne bana yol yardım etti! – Yottagray

2

bunu yapmalısınız:

SELECT [t1].[value] AS [Year], [t1].[value2] AS [Week], COUNT(*) AS [Count] 
FROM (
    SELECT DATEPART(Year, [t0].[creation_date]) AS [value], 
     DATEPART(Week, [t0].[creation_date]) AS [value2] 
    FROM [common_ticket] AS [t0] 
) AS [t1] 
GROUP BY [t1].[value], [t1].[value2]; 
+0

-1, yasadışı PostgreSQL sözdizimi (ya da herhangi bir standart uyumlu DBMS) –

+0

at "at", bu tamamen yasal olan TSQL 2008 –

+3

Evet, ancak soru PostgreSQL ile etiketlendi, bu yüzden çözümünüz OP için geçerli değildir (btw: sorgunuzda korkulu parantez kesinlikle gereksiz) –

İlgili konular