DEVELOPER TOOLS
ASP Documentation
Tool
.NET Documentation
Tool
PHP Documentation
Tool
SQL Documentation
Tool
VB6 Documentation
Tool
Indexing Service
Companion
The Website UtilityTECHNICAL
ARTICLES
ASP
ASP.NET
JavaScript
Transact SQL
Software Reviews
PHOTO GALLERIES
Canon EOS 300D
Samples
Red Arrows 2004
Living Coasts
Akihabara Maids!
Web Page Backgrounds
More Galleries...
TRAVEL LOG
2007: Tokyo
2006: Hong Kong
2005: New York City
NEW STUFF
ASP Spell Check
Code Documentors
The Website Utility
Search Engine Optimisation
Build an ASP Search Engine
My Tropical Fishtank
Text WorkBench
Other New Stuff...
POPULAR STUFF
Regular
Expressions
ASP Documentation Tool
Index
Server & ASP
JavaScript Ad Rotator
LINKS
Business Website
ASPAlliance Articles
SoftwareDocumentation.info

|
Home > Articles > Transact SQL Programming Articles
Generating Randomly Ordered SQL Server Result Sets
This article describes a straightforward method of generating randomly sorted result
sets in SQL Server. This procedure has a number of potential uses, such as displaying a
few randomly chosen news article headlines on a website, or it could be used to randomly
select a few advertisements while ensuring the same advert isn't always displayed at the
top of the advertising space.
Although it is possible to introduce randomness in SQL Server using time functions, in
practice this does not work (especially in stored procedures) because of the speed of
execution of the SQL statements [hence many or all of the rows could be returned in
exactly the same instant of time]. A far better alternative is, therefore, to use the NewID
function to create a unique identifier for each row returned. This returns GUID-like
identifiers such as AF53DB47-766F-44B7-82EC-7459E353B3F3.The results set can then
be ordered by this column.
The use of the NewID function is shown in this example stored procedure shown
below:
CREATE PROCEDURE sp_GetAdverts
(
@MaxNumberOfAdverts int
)
AS
set rowcount @MaxNumberOfAdverts
select top 100 t_Adverts.AdvertID,
t_Adverts.TargetURL,
t_Adverts.AltTag,
newID() as 'RandomColumn'
from t_Adverts
where getdate() between t_Adverts.AdvertStartDate and t_Adverts.AdvertEndDate
order by newID()
GO
Useful Links
- The SQL
Documentation Tool builds technical documentation for Microsoft SQL Server
databases. A free trial version is available for download.
Useful Development Tools
| SQL
Documentation Tool |
| The SQL Documentation Tool creates technical documentation for Microsoft SQL Server 7.0 and 2000 databases. Technical documentation is created in HTML and HTML Help formats. The HTML Help format documentation is fully searchable and cross referenced. The SQL Documentation Tool documents SQL Server Tables, Views, Stored Procedures, Triggers, Table Relationships and Dependencies. |
View Sample
Output (HTML Help format).
View Sample Output (HTML Format).
Download
Trial Version (10.3Mb ZIP file). |
| ASP
Documentation Tool |
| Automatically creates developer documentation for ASP 2.0
and 3.0 web applications written in VBScript and JScript. Documentation for Microsoft
Access, SQL Server 7/2000 databases and Visual Basic 6.0 components associated with the
web application can also be incorporated into the reports. Documentation is created in
HTML, HTML Help and plain text formats. |
View Sample
Output (HTML Help format).
View Sample Output (HTML Format).
Download
Trial Version (5.2Mb ZIP file). |
| .NET Documentation Tool |
| Automatically creates technical documentation for .NET Framework Windows and ASP.NET applications written in C# or VB.NET and SQL Server 7/2000/2005 or Microsoft Access databases associated with the
application. Documentation is created in HTML, HTML Help and plain text formats. |
View Sample
Output (HTML Help format).
View Sample Output (HTML Format).
Download
Trial Version (5Mb ZIP file). |
| Indexing Service Companion |
|
The Indexing Service Companion is a Windows application that extends the functionality of the Microsoft Windows Indexing Service so that it is able to index content from remote websites and also from ODBC databases. As such it can be used as a low cost alternative to Sharepoint Portal Search Services.
|
Try Sample Search Facility.
Download
Trial Version (1.7Mb ZIP file). |
| The Website Utility |
| The Website Utility examines websites for errors and
areas that need to be optimised for search engines by using a built in web crawling engine.
Errors checked for include broken or moved hyperlinks, missing page titles and missing meta tags.
It also generates HTML for use in creating website site maps (table of contents pages - like this one), and is
able to create both client-side JavaScript Search Engines and server-side ASP Search Engines for a website. |
View Sample Output (HTML Format).
Download
Trial Version (3Mb ZIP file). |
|
|