Torna indietro   Hardware Upgrade Forum > Software > Programmazione

iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile
C'è tanta sostanza nel nuovo smartphone della Mela dedicato ai creator digitali. Nuovo telaio in alluminio, sistema di raffreddamento vapor chamber e tre fotocamere da 48 megapixel: non è un semplice smartphone, ma uno studio di produzione digitale on-the-go
Intel Panther Lake: i processori per i notebook del 2026
Intel Panther Lake: i processori per i notebook del 2026
Panther Lake è il nome in codice della prossima generazione di processori Intel Core Ultra, che vedremo al debutto da inizio 2026 nei notebook e nei sistemi desktop più compatti. Nuovi core, nuove GPU e soprattutto una struttura a tile che vede per la prima volta l'utilizzo della tecnologia produttiva Intel 18A: tanta potenza in più, ma senza perdere in efficienza
Intel Xeon 6+: è tempo di Clearwater Forest
Intel Xeon 6+: è tempo di Clearwater Forest
Intel ha annunciato la prossima generazione di processori Xeon dotati di E-Core, quelli per la massima efficienza energetica e densità di elaborazione. Grazie al processo produttivo Intel 18A, i core passano a un massimo di 288 per ogni socket, con aumento della potenza di calcolo e dell'efficienza complessiva.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 24-05-2009, 10:35   #1
mosquita
Senior Member
 
L'Avatar di mosquita
 
Iscritto dal: Oct 2005
Città: [ENOPOLIS] Montespertoli (FI) - PostePay available
Messaggi: 1357
[Mysql] Aiuto per una query

Ciao a tutti

Vengo subito al dunque.....voglio sapere quante volte sono ripetuti in una tabelle i fornitori di un azienda, così;
SELECT fornitore, COUNT( * ) AS totale FROM fornitori GROUP BY (fornitore) having totale >1;
Mi presenta una schermata così;
+------------------------+--------+
| fornitore | totale |
+------------------------+--------+
| Tizio | 4 |
| Caio | 4 |
| Sempronio | 4 |
+------------------------+--------+
3 rows in set (0.00 sec)

Come faccio adesso a vedere le 4 righe "sciolte" di ciascun fornitore? In poche parole, come faccio a vedere le 12 righe?
Grazie
Mosq
__________________
Intel E8500@4200Mhz@1.35-DFI LANPARTY UT-P45-T2RS-2x2048 VITESTA EX.ED-OCZ "Z SERIES" 1000W MODULAR-PNY8600-WB EKSUPREME-SANSO POMP-RADAIRCUBE120-STACKER STC-T01MODDED-
mosquita è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 14:25   #2
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Cosi'?

Codice:
SELECT * FROM totale
ORDER BY fornitore
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 14:39   #3
mosquita
Senior Member
 
L'Avatar di mosquita
 
Iscritto dal: Oct 2005
Città: [ENOPOLIS] Montespertoli (FI) - PostePay available
Messaggi: 1357
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Cosi'?

Codice:
SELECT * FROM totale
ORDER BY fornitore
Totale non è una tabella, è un alias
Mosq
__________________
Intel E8500@4200Mhz@1.35-DFI LANPARTY UT-P45-T2RS-2x2048 VITESTA EX.ED-OCZ "Z SERIES" 1000W MODULAR-PNY8600-WB EKSUPREME-SANSO POMP-RADAIRCUBE120-STACKER STC-T01MODDED-
mosquita è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 14:41   #4
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.

Ultima modifica di gugoXX : 24-05-2009 alle 14:43. Motivo: dup
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 14:43   #5
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Quote:
Originariamente inviato da mosquita Guarda i messaggi
Totale non è una tabella, è un alias
Mosq
Era FROM fornitori ovviamente... lettura affrettata

Altrimenti spiega bene cos'hai e cosa vorresti avere, magari anche con un esempio.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 14:56   #6
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
Codice:
SELECT * FROM Fornitori WHERE Fornitore IN 
(
SELECT fornitore FROM fornitori GROUP BY (fornitore) having COUNT( * ) >1
)
così funziona?
Kralizek è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 14:59   #7
mosquita
Senior Member
 
L'Avatar di mosquita
 
Iscritto dal: Oct 2005
Città: [ENOPOLIS] Montespertoli (FI) - PostePay available
Messaggi: 1357
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Era FROM fornitori ovviamente... lettura affrettata

Altrimenti spiega bene cos'hai e cosa vorresti avere, magari anche con un esempio.
Ok.
La prima query mi fa vedere quali sono i fornitori che si presentano + volte.
Voglio potere vedere, non un raggruppamento ma le tuple singole.
Es. Tizio si presenta ben 4 volte, vorrei vedere 4 tuple di tizio, 4 di Caio e 4 di Sempronio.
Voglio solo vedere, dei fornitori presentati + volte, ogni singola riga.
es:
*************************** 7. row ***************************
id_fornitori: 34
cod_for: 497717
fornitore: Tizio
tipologia: tizieggio
stato: attivo
note: NULL
key_user: Tizio
email: Tizio@tizio.it
*************************** 8. row ***************************
id_fornitori: 35
cod_for: 497717
fornitore: Tizio
tipologia: tizieggio
stato: attivo
note: NULL
key_user: Tizio
email: Tizio@tizio.it
*************************** 9. row ***************************
id_fornitori: 36
cod_for: 497717
fornitore: Tizio
tipologia: tizieggio
stato: attivo
note: NULL
key_user: Tizio
email: Tizio@tizio.it
*************************** 10. row ***************************
id_fornitori: 5
ccod_for: 497717
fornitore: Tizio
tipologia: tizieggio
stato: attivo
note: NULL
key_user: Tizio
email: Tizio@tizio.it
*************************** 11. row ***************************
__________________
Intel E8500@4200Mhz@1.35-DFI LANPARTY UT-P45-T2RS-2x2048 VITESTA EX.ED-OCZ "Z SERIES" 1000W MODULAR-PNY8600-WB EKSUPREME-SANSO POMP-RADAIRCUBE120-STACKER STC-T01MODDED-
mosquita è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 15:08   #8
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Non ci sono.
Dici di volere una cosa pero' poi nell'esempio ne mostri un'altra.

Codice:
Voglio potere vedere, non un raggruppamento ma le tuple singole.
Es. Tizio si presenta ben 4 volte, vorrei vedere 4 tuple di tizio
Codice:
SELECT * FROM fornitori
ORDER BY id_fornitori
Se Tizio si presenta 4 volte, avrai 4 record di tizio, uno per ciascuna entry.
solo non e' trasposto, cosa che in SQL non e' affatto semplice.
Se ti serve proprio questo, lo saprei fare sotto Oracle e sotto SqlServer. Niente MySql mi spiace.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 15:11   #9
mosquita
Senior Member
 
L'Avatar di mosquita
 
Iscritto dal: Oct 2005
Città: [ENOPOLIS] Montespertoli (FI) - PostePay available
Messaggi: 1357
Quote:
Originariamente inviato da gugoXX Guarda i messaggi
Non ci sono.
Dici di volere una cosa pero' poi nell'esempio ne mostri un'altra.

Codice:
Voglio potere vedere, non un raggruppamento ma le tuple singole.
Es. Tizio si presenta ben 4 volte, vorrei vedere 4 tuple di tizio
Codice:
SELECT * FROM fornitori
ORDER BY id_fornitori
Se Tizio si presenta 4 volte, avrai 4 record di tizio, uno per ciascuna entry.
solo non e' trasposto, cosa che in SQL non e' affatto semplice.
Se ti serve proprio questo, lo saprei fare sotto Oracle e sotto SqlServer. Niente MySql mi spiace.
Scusa se mi sono spiegato male ma Kralizek ha capito.

Quote:
Originariamente inviato da Kralizek Guarda i messaggi
Codice:
SELECT * FROM Fornitori WHERE Fornitore IN 
(
SELECT fornitore FROM fornitori GROUP BY (fornitore) having COUNT( * ) >1
)
così funziona?
Alla grande.....grazie 1000
Mosq
__________________
Intel E8500@4200Mhz@1.35-DFI LANPARTY UT-P45-T2RS-2x2048 VITESTA EX.ED-OCZ "Z SERIES" 1000W MODULAR-PNY8600-WB EKSUPREME-SANSO POMP-RADAIRCUBE120-STACKER STC-T01MODDED-
mosquita è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 15:22   #10
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Quote:
Originariamente inviato da mosquita Guarda i messaggi
Scusa se mi sono spiegato male ma Kralizek ha capito.


Alla grande.....grazie 1000
Mosq
Pensavo fosse un problema di presentazione piu' che di contenuto.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.

Ultima modifica di gugoXX : 24-05-2009 alle 16:24. Motivo: Misunderstanding
gugoXX è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 17:14   #11
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
gugo se fosse sql server, ci sarebbe qualche improvement possibile da un punto di vista delle performance?
Kralizek è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2009, 18:53   #12
gugoXX
Senior Member
 
L'Avatar di gugoXX
 
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
Si potrebbe provare con una analytic function, ma non penso che si senta molto

Codice:
SELECT * FROM (
SELECT *,COUNT(*) OVER (PARTITION BY id_fornitori) cnt
   FROM fornitori
) AS tmp
WHERE cnt>1
Il concetto e' che viene letta tutta la tabella una volta sola, invece che 2 volte all'indice e una alla tabella come nella tua query.

Direi che si guadagna tanto di piu' quanti piu' sono i record che soddisfano la clausola.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto.
E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test.
gugoXX è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


iPhone 17 Pro: più di uno smartphone. È uno studio di produzione in formato tascabile iPhone 17 Pro: più di uno smartphone. &Eg...
Intel Panther Lake: i processori per i notebook del 2026 Intel Panther Lake: i processori per i notebook ...
Intel Xeon 6+: è tempo di Clearwater Forest Intel Xeon 6+: è tempo di Clearwater Fore...
4K a 160Hz o Full HD a 320Hz? Titan Army P2712V, a un prezzo molto basso 4K a 160Hz o Full HD a 320Hz? Titan Army P2712V,...
Recensione Google Pixel Watch 4: basta sollevarlo e si ha Gemini sempre al polso Recensione Google Pixel Watch 4: basta sollevarl...
Google annuncia Gemini Enterprise: l'IA ...
Battlefield 6 debutta tra code infinite ...
Gli iPhone di seconda mano dominano il m...
Pavel Durov (Telegram) lancia l'allarme:...
Occhiali Smart come lo smartphone: il fu...
Arriva NVIDIA GB300 NVL72, il cluster di...
Copilot si collega a OneDrive, Gmail e D...
Il Liquid Glass di iOS 26 è stato...
I biocarburanti fanno più danni d...
ELF, il Frankenstein di Mercedes che ant...
Da Kia arriva il passaporto per le batte...
The Elder Scrolls 6 renderà omagg...
YouTube dà una 'seconda chance' a...
Attacco hacker a Oracle E-Business Suite...
Wi-Fi 7 per tutti: FRITZ!Repeater 1700 p...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:47.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v