Solved

Ranking in Access

Posted on 2012-03-12
8
315 Views
Last Modified: 2012-03-23
I have an access table that has points calulated.

vendor 1
Rating 1  60 pts
Rating 2  40 pts
Rating 3  40 pts
Rating 4  30 pts
Rating 5  20 pts

I have created a query that ranks the ratings.  It comes out so:
1
2
2
4
5

What I need it to do is a distinct rating like so:
1
2
2
3
4
0
Comment
Question by:dbasetrouble
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
8 Comments
 
LVL 15

Accepted Solution

by:
Ess Kay earned 500 total points
ID: 37711831
that makes no sense. can you please provide a screenshot
0
 

Expert Comment

by:gnetgnet
ID: 37711833
Do a
Select Distinct Ranking
0
 

Author Comment

by:dbasetrouble
ID: 37715933
Snapshot of Table.Here is a screen snap shot of the Database table.  I need ranking according to the points column.  There is a tie.  I need the rank to look like this:
1
2
2
3
4
Not
1
2
2
4
5
0
PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

 

Expert Comment

by:gnetgnet
ID: 37716005
I see your problem, I don't have an answer for that off the top of my head. Sorry!
0
 
LVL 15

Expert Comment

by:Ess Kay
ID: 37716120
1        one solution is to order it by rating, then take the row number


2          another is to use WITH TIES

source: http://harriyott.com/2007/06/with-ties-sql-server-tip.aspx

SELECT TOP 5 WITH TIES Name, Score
FROM Scores
ORDER BY Score DESC

Open in new window


Which gives:

Name      Score
Brenda      42
Maureen      41
Edwin      41
Terry      40
Rupert      39
Arthur      39
Paula      39




If you choose to use the second method. You can query into it from another query and select the rankings that way
0
 
LVL 15

Expert Comment

by:Ess Kay
ID: 37716369
Actually this will probably work better



SELECT * FROM
 (SELECT id, points from member1 )Y INNER JOIN
(SELECT DISTINCT points, count(*)as rating FROM member1 GROUP BY points ORDER BY points )X ON Y.points = X.points
ORDER BY Points
0
 

Author Comment

by:dbasetrouble
ID: 37716537
Thanks for the help.  Figured out a much easier way.  I created a query call distinctrank.  I added just the points field and change the query properties to uniquevalue=Yes.  I then create a expression field in the regular query that looks like this:

Rank1: DCount("*","distinctrank","Points >" & [Points])+1

Work out great.
0
 
LVL 15

Expert Comment

by:Ess Kay
ID: 37716583
great to hear, if you have a large table the last one i added might work quicker, but it looks like you might not need it
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

We were having a lot of "Heartbeat Alerts" in our SCOM environment, now "Heartbeat" in a SCOM environment for those of you who might not be familiar with SCOM is a packet of data sent from the agent to the management server on a regular basis, basic…
Entering time in Microsoft Access can be difficult. An input mask often bothers users more than helping them and won't catch all typing errors. This article shows how to create a textbox for 24-hour time input with full validation politely catching …
Viewers will learn how to maximize accessibility options in an Excel workbook for users with accessibility issues.
The view will learn how to download and install SIMTOOLS and FORMLIST into Excel, how to use SIMTOOLS to generate a Monte Carlo simulation of 30 sales calls, and how to calculate the conditional probability based on the results of the Monte Carlo …

734 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question