Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Grabbing the last row of a db table and then increment it.

Posted on 2014-10-27
9
Medium Priority
?
211 Views
Last Modified: 2014-10-27
I have one Table called Draft which has several fields that user will select like PlayerID ,DraftTeam and Ncca Team then I have 4 remaining textboxes and here is where I don't know where to start I have a  sub that gets current year 2014 but when user goes to use this it will be 2015 so I made that field available for testing now I have 3 textboxes left one is round, one is Draft position and last is overall position at the round only increases in NFL after 32 draft positions have been reached 30 for NBA and 30 for nhl overall just increments until the end so after round 1 has been complete then round becomes 2 and Draft position goes back to 1 and based on sport increments to either 32 NFL 30 NBA AND 30 NHL. THE Issue is if any of these 3 sports adds a new team to their league. That will screw up flow cause if I hardcode 32,or 30. oh overall position is just a count which increments.
Any suggestions
0
Comment
Question by:powerztom
  • 3
  • 3
  • 2
9 Comments
 
LVL 24

Assisted Solution

by:Phillip Burton
Phillip Burton earned 800 total points
ID: 40406534
I don't quite understand the question. Maybe examples might make it clearer.

Assuming that your problem is that you want the minimum number of matches than any team has played, and you have a Year field and a Team field, so you know that a particular team has played x matches in a particular year, then you could use:

Select min(Matches) as MinMatches
from 
(select [Year], Team, count(Team) as Matches
from Draft
where [Year] = (select max(Year) from Draft)
Group by [Year], Team) as t

Open in new window


However, as I said, what you are asking for is not clear. Maybe you could also post the structure of your tables.
0
 
LVL 52

Expert Comment

by:Vitor Montalvão
ID: 40406537
Punctuations will help us first, so we can help you after.
0
 

Author Comment

by:powerztom
ID: 40406604
Sorry Guys that I was unclear I posting to screenshots one shows a complete round 1 Draft and the 2nd round 2 draft You can see the draft position stays 1to32 and overall just keeps incrementing. Here 2 screen shots
I thing I was thinking of using something like this
 Dim sql As String = "SELECT TOP 1 draftpos FROM draft ORDER BY overallpos DESC" this won't work but I know this will grab last row I'm just trying to think the logic not a SQL Master wish I was.

report1
next round

2nd round
0
Fill in the form and get your FREE NFR key NOW!

Veeam is happy to provide a FREE NFR server license to certified engineers, trainers, and bloggers.  It allows for the non‑production use of Veeam Agent for Microsoft Windows. This license is valid for five workstations and two servers.

 
LVL 24

Expert Comment

by:Phillip Burton
ID: 40406616
Still not clear what you want.

If you want OverAllPos to be from 1-32, then use ROW_NUMBER().
0
 

Author Comment

by:powerztom
ID: 40406638
if you look at both pics column Draftpos is the column 1-32 and look at overallpos it goes 1-32 but on 2nd round 33 to 64 that column keeps incrementing until the entire draft is done. next round Draftpos is 1-32 Each Nfl team gets a pick then it's 3rd round Draftpos 1-32 and then Overallpos is 65-100. I apologize if this is not clear. But that's what I am Tasked with.
0
 
LVL 24

Assisted Solution

by:Phillip Burton
Phillip Burton earned 800 total points
ID: 40406649
Therefore, I would used ROW_NUMBER().

If you knew the number of teams, then I could use % as the modulo.
0
 
LVL 52

Accepted Solution

by:
Vitor Montalvão earned 1200 total points
ID: 40406658
Do you want to grab all row or just one field?
For full row use this query:
"SELECT TOP 1 * FROM draft ORDER BY overallpos DESC"

Open in new window

0
 

Author Closing Comment

by:powerztom
ID: 40406937
Thanks Guys I feel you all deserve the points I want to ask one of you a favor tagging and on to a sql statement.
http://www.experts-exchange.com/Database/MS-SQL-Server/Q_28544250.html any questions hit me back.Thanks again
0

Featured Post

Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

Question has a verified solution.

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

A Stored Procedure in Microsoft SQL Server is a powerful feature that it can be used to execute the Data Manipulation Language (DML) or Data Definition Language (DDL). Depending on business requirements, a single Stored Procedure can return differe…
One of the most important things in an application is the query performance. This article intends to give you good tips to improve the performance of your queries.
Using examples as well as descriptions, and references to Books Online, show the different Recovery Models available in SQL Server and explain, as well as show how full, differential and transaction log backups are performed
Viewers will learn how the fundamental information of how to create a table.

916 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