🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.php
Article #164

Re: leyendo registros en SQL

#164
From: "Álvaro G. Vicario"
Date: Fri, 12 Dec 2008 12:15
41 lines
3184 bytes
Silvio escribi�:
> On 10 dic, 19:08, "Pin" <sd...@rewerew.we> wrote:
>> Hola, tengo una tabla SQL de unos 3000 registros, me gustaria leerlos en
>> bloques de 50 al azar, vamos que la primera vez leemos 50 al azar, la 2� vez
>> lo mismo pero que no se repitan con los primeros y asi, �hay alguna funci�n
>> para esto?
>> De momento lo que he hecho es  leer todos los registros y cargarlos a una
>> tabla y a�adir un campo extra para ver is ya ha sido seleccionado o no, pero
>> no me termina de gustar, si alguien conoce otra forma, me gustar�a o�rla.
> 
> Quiz�s te convenga obtener el md5 o hash de alg�n campo o de la
> concatenaci�n de alg�n campo y ordenar por eso.

Esta idea es muy buena. Ya para rematar, se puede le puede incorporar un 
valor al hash (generado aleatoriamente desde PHP, pero el mismo para 
todas las lecturas) que garantice un orden distinto en cada sesi�n pero 
el mismo dentro de la sesi�n.

$sql = "select * " .
	"from personas " .
	"order by md5('" . $semilla_sesion . "' || id)";

> 
> en PG.
> select * from personas order by md5( apellido || nombre ) limit xxx
> offset xxx;
> 
> en MySQL
> select * from personas order by md5( concat( apellido, nombre ) )
> limit xxx offset xxx;
> 
> Silvio




-- 
-- http://alvaro.es - �lvaro G. Vicario - Burgos, Spain
-- Mi sitio sobre programaci�n web: http://bits.demogracia.com
-- Mi web de humor al ba�o Mar�a: http://www.demogracia.com
--
Technical Details
Message-ID: <ghtklu$9ci$1@huron.algomas.org>
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!proxad.net!feeder1-2.proxad.net!news.newsland.it!news-15.escomposlinux.org!not-for-mail
References: <ghpdvb$t02$1@caladan.landsraad.net> <1a253311-918f-46b6-a082-c990501f6778@i18g2000prf.googlegroups.com>

Show Full Headers
Complete Article Headers
X-Google-Thread: 107579,e61d80209d52e6da
X-Google-Attributes: gid107579,domainid0,public,usenet
X-Google-Language: SPANISH,ASCII
Path: arc1-ca.pugleaf.net!g2news1.google.com!news3.google.com!proxad.net!feeder1-2.proxad.net!news.newsland.it!news-15.escomposlinux.org!not-for-mail
From: "Álvaro G. Vicario"
 <alvaroNOSPAMTHANKS@demogracia.com>
Newsgroups: es.comp.lenguajes.php
Subject: Re: leyendo registros en SQL
Date: Fri, 12 Dec 2008 13:15:56 +0100
Organization: escomposlinux.org
Lines: 41
Message-ID: <ghtklu$9ci$1@huron.algomas.org>
References: <ghpdvb$t02$1@caladan.landsraad.net> <1a253311-918f-46b6-a082-c990501f6778@i18g2000prf.googlegroups.com>
NNTP-Posting-Host: 51.red-80-37-14.staticip.rima-tde.net
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: huron.algomas.org 1229084158 9618 80.37.14.51 (12 Dec 2008 12:15:58 GMT)
X-Complaints-To: netnews@news-15.escomposlinux.org
NNTP-Posting-Date: Fri, 12 Dec 2008 12:15:58 +0000 (UTC)
User-Agent: Thunderbird 2.0.0.18 (Windows/20081105)
In-Reply-To: <1a253311-918f-46b6-a082-c990501f6778@i18g2000prf.googlegroups.com>
Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAAK/INwWK6QAAABl0
 RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAGUExURQAAAP///6XZn90AAADwSURB
 VHjaxJZREsMgCAXX+1+6bZoY0IfgTDr1K4msAg8xtM3BPwDeYw9Y7vsIwBaAHSlgzCIIb65SFgFR
 MofPZPYjQS653iEWl6eAqlIpEKR11icTjrkw1h5+5mc7gSGPzWIj5rI74fNVB90nnc1xkiRglzbf
 jpOkgH4Cut25PG3OhFnxmgF1+Kyftws4Fd3a1zOi/ui+iCpBVUckNT5v5C10AJYt0rSssXy2AL8J
 MgaTsdEnL8D3EZmWQLuxkaWtqAhQAJqviQLQTKytBNzxtiqwF0Oh3QcNf3GhzErLGie+EXX1yltt
 Vee//zl5CTAA4FAHcXyuylAAAAAASUVORK5CYII=