Click here to Skip to main content
Click here to Skip to main content

Get Top X rows from a table

, 23 Feb 2012 CPOL
Rate this:
Please Sign up or sign in to vote.
How to use variable in SELECT TOP SQL command
Sometimes, we do very ugly things just because of missing simple tricks.
I believe all of the devs who work with SQL use SELECT TOP command as they need. This is a very simple SQL command.
Now, sometimes you need to use variable instead of constant number (say 10). If you write the query as:
DECLARE @count int
SET @count = 20
This will give you a syntax error.
To solve this issue, we sometimes write dynamic SQL (SQL statements constructed inside a string variable) and execute that.
But we all know dynamic SQL is always bad for many reasons and we should avoid that as far as we can.
We can avoid dynamic SQL in this scenario very easily with a simple trick. Once you know that, you will laugh at yourself if you really used dynamic SQL for this scenario.
The Solution:
DECLARE @count int
SET @count = 20
Did you mark the trick? Yes, you just need enclose the variable with a Bracket ().
By the way, this trick is Microsoft SQL Server specific. Experts from Oracle or mysql may post alternatives from those platforms.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Mahmud Hasan
Software Developer (Senior)
Netherlands Netherlands
Software Engineer | Software Architect | System Designer | System Analyst | Team Leader | Consultant (.Net)
9 Years of Experience in the Industry.
Currently working as System Designer at CIMSOLUTIONS, Netherlands

View My Profile in LinkedIn
Follow on   Twitter

Comments and Discussions

GeneralReason for my vote of 5 nice one Pinmembernikhi _singh22-Feb-12 1:54 
Reason for my vote of 5
nice one
GeneralRe: Thanks. PinmemberMahmud Hasan22-Feb-12 5:50 
GeneralReason for my vote of 5 Thanks! PinmemberPablo Aliskevicius21-Feb-12 22:33 
GeneralRe: Thanks. PinmemberMahmud Hasan21-Feb-12 22:36 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web03 | 2.8.150302.1 | Last Updated 23 Feb 2012
Article Copyright 2012 by Mahmud Hasan
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid