Newsgroup: it.comp.software.database
Titolo: [mysql] Colonna numeratore

Esiste un modo, anche ricorrendo alle funzioni messe a disposizione da
MySQL, di creare al volo una colonna che enumeri i record?
Tipo:
+--+----------+---------+
|??|cognome   |nome     |
+--+----------+---------+
| 1|Bianchi   |Luca     |
| 2|Rossi     |Mario    |
| 3|Verdi     |Giuseppe |
   ....
+--+----------+---------+
Saluti
Matteo

fermat wrote:

cerca sul manuale "auto_increment". č una proprietą assegnabile alle pk.
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicitą progresso:
http://www.collinelli.net/antispam/

 cerca sul manuale "auto_increment". è una proprietà assegnabile alle pk.
forse no ho visto 'al volo'...
puoi creare una heap table (in memoria) con auto_increment, caricarla e 
riselezionarla.
se vuoi aggiungere proprio la colonna, puoi fare la stessa cosa passando per 
una tabella non heap (non si sa mai).
sicuramente ci sono modi + validi ma non me ne vengono in mente...
cosa vuol dire avere le sequences! :-)
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/gnu/why-gnu-linux.it.html

[MEGA CUT]
Non dovrebbe funzionare. Se uno cancella un record che fai ??? Il campo
auto-increment continua a crescere ma il numero dei record non è quello
giusto....
--
Simone
Honda S2000 driver Blu/black 240cv
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.419 / Virus Database: 235 - Release Date: 13/11/2002

 giusto....
se lo vuoi mentre selezioni, usi una temporary table heap.
ma allora selezioni, non cancelli!!
se vuoi aggiungere la colonna, è chiaro che se cancelli ti perdi dei numeri 
per strada!
ne abbiamo parlato decine di volte...
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.gnu.org/philosophy/no-word-attachments.it.html


wrote:

Devi solo visualizzarla o anche salvare la suddetta tabella nel DB?
Nel primo caso un semplice loop che conta i record e li numera, nel
secondo credo che tu non possa farlo "al volo".
Se sbaglio correggetemi.
Alla prossima.
	MAX

Nel primo caso un semplice loop che conta i record e li numera, 
Si possono utilizzare loop in MySQL?
Quel che mi interessa infatti è realizzarla tramite la query, e non
attraverso altri linguaggi di scripting (PHP eccetera) con cui potrei
eventualmente manipolare i risultati ottenuti.
Grazie e saluti,
Matteo

 eventualmente manipolare i risultati ottenuti.
mi correggo da un altro post che ho fatto: auto_increment e heap insieme non 
sono possibili (dannazione!):
create temporary table temppippo (chiave integer primary key auto_increment, 
campo1 varchar(10)) type=heap;
ERROR 1164: The used table type doesn't support AUTO_INCREMENT columns
devi ricorrere ad una temporary table su disco, con tutti i rallentamenti 
del caso:
create temporary table temppippo (chiave integer primary key auto_increment, 
campo1 varchar(10));
insert into temppippo (campo1) select campo1 from pippo order by campo1;
select * from temppippo;
drop table temppippo;
ci fossero le sequences o uno sputo di linguaggio procedurale non ci 
sarebbero problemi, invece devi accontentarti di quello che mysql ti offre 
(l'hai scelto tu?)
se non puoi manipolare dati in altri modi, scegliere un dbms con un plsql 
del caso non sarebbe certo male!
ciao
-- 
Punkarruso
mail:punkarruso chiocchiolona despammed punto com
pubblicità progresso:
http://www.nist.gov/dads/