There are more efficient ways of getting a single random record from the database. You are grabbing them all every time when you only need 1.
SQL Server: SElECT TOP 1 q.questionid, q.questiontext FROM questions q ORDER BY NEWID() MySQL SELECT q.questionid, q.questiontext FROM questions q ORDER BY RAND() LIMIT 0,1 As for not showing a user the same question twice, you could store the questionIDs that they have seen in their session (or the questionIds that they havent seen... your call) and then filter those from your possible results. 1: Get a random record they havent seen SELECT TOP 1 q.questionid, q.questiontext FROM questions q WHERE q.questionId NOT IN <cfqueryparam cfsqltype="cf_sql_integer" value="#session.listOfUsedQuestionIds#" list="true" />) ORDER BY NEWID() 2: Add it to the list of questions they have seen listappend(session.listofusedquestions, thisQuestionQuery.questionId) 3: Display the question. .:.:.:.:.:.:.:.:.:.:.:. Bobby Hartsfield http://acoderslife.com http://cf4em.com -----Original Message----- From: Akos Fortagh [mailto:[email protected]] Sent: Thursday, March 29, 2012 4:22 AM To: cf-talk Subject: random records no duplicates hi there, wondering if someone might be able to help with this please. I have a simple questions table and I'm displaying one randomly generated question from it at a time. User clicks a button and the page reloads to give the next question. So far I have this simple bit working fine: <cfquery name="getquestion" datasource="#request.DSN#"> SELECT questions.questionid, questions.questiontext FROM questions </cfquery> <cfset displayRow = RandRange(1,getquestion.recordcount)> <cfoutput query="getquestion" maxrows="1" startrow="#displayRow#">#questiontext#</cfoutput> What would be the easiest approach to make sure that one question cannot be delivered twice? Any help would be greatly appreciated. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Order the Adobe Coldfusion Anthology now! http://www.amazon.com/Adobe-Coldfusion-Anthology/dp/1430272155/?tag=houseoffusion Archive: http://www.houseoffusion.com/groups/cf-talk/message.cfm/messageid:350583 Subscription: http://www.houseoffusion.com/groups/cf-talk/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/groups/cf-talk/unsubscribe.cfm

