Προς το περιεχόμενο

SQL queries questions (Categories + TOP10)


skous

Προτεινόμενες αναρτήσεις

Δημοσ.

hello

 

Έχουμε 1 πίνακα με άτομα π.χ. και ημερομηνίες γέννησης και μισθούς.

 

1) Θέλω να κάνω ένα report που να εμφανίζει τά άτομα ανα κατηγορίες ηλικίας π.χ.

 

Δηλαδή πόσα άτομα είναι 0-15, πόσα 15-25, πόσα 25-35 κτλ.

 

Μπορεί κανείς να μου πεί πώς μπορώ να φτιάξω ένα τέτοιο query (μάλλον nested θα είναι, σωστά;)

 

 

2) Επίσης, υπάρχει κάποιος τρόπος να βλέπω π.χ το TOP10 μιας ερώτησης (π.χ. ποια είναι τα 10 άτομα με τον υψηλότερο μισθό)

 

thnx a lot

Δημοσ.

Για το δεύτερο ερωτημά σου δηλάδή για το "TOP10 μιας ερώτησης (π.χ. ποια είναι τα 10 άτομα με τον υψηλότερο μισθό)"

Μπορείς να το ζητήσεις ως εξής

 

select top 10 * from table order by field

 

Όπου table βάζεις τον πίνακα που σε ενδιαφέρει και όπου field το πεδίο βάση του οποίου θέλεις να ζητήσεις τα top 10

Ας πούμε ότι ο πινακάς σου λέγεται Users και το πεδίο που εντιπροσωπέυει το μισθό τους Salary

τότε το Query έχει ως εξής

 

Select top 10 * from Users order by salary

Δημοσ.

>
SELECT
CASE WHEN [tblAges].[Age] BETWEEN 0 AND 15 THEN '0-15' 
WHEN [tblAges].[Age] BETWEEN 16 AND 25 THEN '16-25' 
WHEN [tblAges].[Age] BETWEEN 26 AND 35 THEN '26-35' 
WHEN [tblAges].[Age] BETWEEN 31 AND 40 THEN '31-40' 
WHEN [tblAges].[Age] > 41 THEN '41+' END as 'Range',
COUNT(1) AS 'Count'
FROM [dbo].[tblAges]
GROUP BY WHEN [tblAges].[Age] BETWEEN 0 AND 15 THEN '0-15' 
WHEN [tblAges].[Age] BETWEEN 16 AND 25 THEN '16-25' 
WHEN [tblAges].[Age] BETWEEN 26 AND 35 THEN '26-35' 
WHEN [tblAges].[Age] BETWEEN 31 AND 40 THEN '31-40' 
WHEN [tblAges].[Age] > 41 THEN '41+' END

 

Δοκίμασε αυτό με τις κατάλληλες αλλαγές για τους πίνακες και τις στήλες σου.

Δημοσ.
>
SELECT
CASE WHEN [tblAges].[Age] BETWEEN 0 AND 15 THEN '0-15' 
WHEN [tblAges].[Age] BETWEEN 16 AND 25 THEN '16-25' 
WHEN [tblAges].[Age] BETWEEN 26 AND 35 THEN '26-35' 
WHEN [tblAges].[Age] BETWEEN 31 AND 40 THEN '31-40' 
WHEN [tblAges].[Age] > 41 THEN '41+' END as 'Range',
COUNT(1) AS 'Count'
FROM [dbo].[tblAges]
GROUP BY WHEN [tblAges].[Age] BETWEEN 0 AND 15 THEN '0-15' 
WHEN [tblAges].[Age] BETWEEN 16 AND 25 THEN '16-25' 
WHEN [tblAges].[Age] BETWEEN 26 AND 35 THEN '26-35' 
WHEN [tblAges].[Age] BETWEEN 31 AND 40 THEN '31-40' 
WHEN [tblAges].[Age] > 41 THEN '41+' END

 

Δοκίμασε αυτό με τις κατάλληλες αλλαγές για τους πίνακες και τις στήλες σου.

 

Τhnx a lot!

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...