Torna indietro   Hardware Upgrade Forum > Software > Programmi e Utility

Attenti a Poco F7: può essere il best buy del 2025. Recensione
Attenti a Poco F7: può essere il best buy del 2025. Recensione
Poco F7 5G, smartphone che punta molto sulle prestazioni grazie al processore Snapdragon 8s Gen 4 e a un display AMOLED da ben 6,83 pollici. La casa cinese mantiene la tradizione della serie F offrendo specifiche tecniche di alto livello a un prezzo competitivo, con una batteria generosissima da 6500 mAh e ricarica rapida a 90W che possono fare la differenza per gli utenti più esigenti.
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale
Abbiamo provato per molti giorni il nuovo Z Fold7 di Samsung, un prodotto davvero interessante e costruito nei minimi dettagli. Rispetto al predecessore, cambiano parecchie cose, facendo un salto generazionale importante. Sarà lui il pieghevole di riferimento? Ecco la nostra recensione completa.
The Edge of Fate è Destiny 2.5. E questo è un problema
The Edge of Fate è Destiny 2.5. E questo è un problema
Bungie riesce a costruire una delle campagne più coinvolgenti della serie e introduce cambiamenti profondi al sistema di gioco, tra nuove stat e tier dell’equipaggiamento. Ma con risorse limitate e scelte discutibili, il vero salto evolutivo resta solo un’occasione mancata
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 28-07-2009, 18:11   #1
dark.shark.dsk
Senior Member
 
Iscritto dal: Sep 2004
Messaggi: 324
Openoffice Base - Aiuto per una query tra 2 tabelle

Ciao a tutti,
sono in grande difficoltà con la creazione di una query tra due tabelle e magari qualcuno qui mi sa aiutare...

- Nella tabella1 ho un campo che si chiama "origine", che determina il materiale grezzo che è stato usato per fabbricare un prodotto.

- Nella tabella2 ho tutte le analisi dei vari materiali grezzi (ci sono anche molte ripetizioni della stessa analisi per lo stesso materiale).

Vorrei fare una query che aggiunge ad ogni record della tabella 1, un altro campo con la media delle analisi della sua relativa "origine", in modo da affiancare alla scheda di un prodotto anche le caratteristiche del materiale grezzo usato per produrlo.

Al momento ho fatto una query dalla tabella2 (chiamiamola query1) che raggruppa le origini uguali e che fa una media dei valori delle loro analisi così da avere una tabella con un record per "origine".
A questo punto vorrei creare una query che associa i dati di ogni "origine" della query1, al relativo prodotto finito della tabella 1... Ma non riesco ad eseguire la ricerca...

Mi sapreste dare una mano?
__________________
Non è morto ciò che in eterno può attendere,
E con il passare di strane ere anche la morte muore.
dark.shark.dsk è offline   Rispondi citando il messaggio o parte di esso
Old 28-07-2009, 22:04   #2
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Prima di mettermi a battagliare con il pseudo-sql di Base ( ) ti dico che è contrario alle regole di normalizzazione di una base dati l'inserimento in una tabella di campi calcolati. La cosa più saggia da fare è una semplice select con un inner join tra le due tabelle solo in fase di visualizzazione dati.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 08:38   #3
dark.shark.dsk
Senior Member
 
Iscritto dal: Sep 2004
Messaggi: 324
Grazie per la risposta

Purtroppo di teoria dei database ne so pochissimo (normalizzazione questa sconosciuta... ) e fino ad ora mi sono praticamente solo limitato ad inserire dati in database già fatti e poco altro, ma ora mi tocca approfondire le mie conoscenze...

Potresti spiegarmi un pochino meglio cosa intendi con quello che mi hai scritto?
Non pensavo si potesse ragruppare i record di una tabella e fare una query con un altra in un unico passaggio...

Un altra cosa, mi sembra di capire non ti sta troppo simpatico Base...
Conosci qualche alternativa migliore sempre free per gestire i database?
__________________
Non è morto ciò che in eterno può attendere,
E con il passare di strane ere anche la morte muore.
dark.shark.dsk è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 10:20   #4
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Ciao. Allora, un punto di partenza da cui iniziare a capire cosa si intenda per normalizzazione di un database è wikipedia.

http://it.wikipedia.org/wiki/Normali...e_del_database.

Per quanto concerne il tuo problema, sebbene ovviamente non conosca completamente la tua situazione, a grandi linee strutturerei la cosa in questo modo.

Tabella materiali

id_materiale (semplice numero progressivo)
nome_materiale

Tabella_analisi
id (numero progressivo)
id_materiale (il codice che fa riferimento alla chiave primaria della tabella materiali)
valore_numerico

In questo modo, come ti accennavo ieri, potresti fare una semplice join tra le due tabelle e ricavare agevolmente il nome del materiale e la relativa media, mantenendo i dati coerenti.

La query sarebbe questa

Codice:
select  m.nome_materiale,avg(a.valore_numerico) as media
from materiali as m
inner join analisi as a
on m.id_materiale = a.id_materiale
group by a.id_materiale
order by a.id_materiale
testata su mysql ma sono tutte istruzioni sql standard. Per quanto riguarda Base non ci ho mai dovuto lavorare ma da quel poco che ho visto non mi piace per nulla (esempio banale trovo molto diseducativo nell'apprendimento dell'sql che metta i nomi dei campi e delle tabelle tra apici e anche la sua interpretazione dell'sql la trovo molto "personale"). De gustibus.


Infine, per quanto concerne le alternative free, dipende dalle tue esigenze e dalle competenze di chi dovrà mettere mani al database. Sicuramente access e base forniscono un'interfaccia grafica più user-friendly ma se potessi ti orienterei su mysql, il più utilizzato rdbms open source al mondo. Ovviamente non saresti costretto a lavorare tramite riga di comando ma potresti ricorrere ad uno dei tanti front-end messi a disposizione. Personalmente mi trovo benissimo con sqlyog

http://download.html.it/software/vedi/2355/sqlyog/

che ti permette di gestire tramite interfaccia grafica la creazione di tabelle, la loro esportazione e quant'altro. P.S. Non so se lo stesso discorso valga per Base come per Access ma con mysql scordati di poter trascinare i campi nella griglia per la generazione delle query. Dovrai scrivertele tu ma ti si aprirà tutto un altro mondo.
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 11:59   #5
dark.shark.dsk
Senior Member
 
Iscritto dal: Sep 2004
Messaggi: 324
Capisco...
Ora sto cercando di adattare il codice che mi hai dato al mio database, e sembra che vada bene

Già questo è un buon risultato.

Per quanto riguarda l'adozione di mysql e sqlyog (ma si sa che droghe prendeva il tipo che gli ha dato sto nome?), ci farò un pensiero, anche se purtroppo non ho molto tempo per mettermi ad imparare il codice sql puro e già mi incasino ad ottenere cio che voglio dai programmi più user friendly...

Sarebbe molto interessante sapere se fosse possibile ad un certo punto "convertire" il mio db fatto in Base in mysql. Per cause di forza maggiore ho dovuto già iniziare ad inserire dati nel db fatto con Base, e se non è possibile esportare i dati che già ho, l'idea di mettermi a reinserirli tutti a mano in un altro db già mi fa scartare a priori la cosa.
__________________
Non è morto ciò che in eterno può attendere,
E con il passare di strane ere anche la morte muore.
dark.shark.dsk è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 14:00   #6
john_revelator
Senior Member
 
L'Avatar di john_revelator
 
Iscritto dal: Jul 2007
Messaggi: 1092
Quote:
Originariamente inviato da dark.shark.dsk Guarda i messaggi
Capisco...
Sarebbe molto interessante sapere se fosse possibile ad un certo punto "convertire" il mio db fatto in Base in mysql. Per cause di forza maggiore ho dovuto già iniziare ad inserire dati nel db fatto con Base, e se non è possibile esportare i dati che già ho, l'idea di mettermi a reinserirli tutti a mano in un altro db già mi fa scartare a priori la cosa.
Ti ripeto. Non conosco per niente Base. Ho dato una rapida occhiata nei vari menù e non ho trovato nessuna voce relativa al backup o all'esportazione. Tuttavia potresti cliccare sulla tabella che ti interessa col tasto destro, fare copia e incollare su calc. A questo punto salvi il file in formato csv e mysql è perfettamente in grado di importare i dati da tale formato.

Il primo link che ho trovato è questo
http://www.sastgroup.com/tutorials/i...-tabella-mysql

ma per maggiori dettagli ti rimando al manuale ufficiale

http://dev.mysql.com/doc/refman/5.1/en/load-data.html
john_revelator è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 17:27   #7
dark.shark.dsk
Senior Member
 
Iscritto dal: Sep 2004
Messaggi: 324
Anche se dici di non saperne di Base, ne sai comunque più di me di database in generale...

Già la manovara di copiare la tabella in un foglio di calcolo, salvarlo in csv ed importarlo con mysql è una bella scoperta...
Almeno so che se un giorno o l'altro avrò il tempo per imparare molto meglio l'sql, esiste un modo per tirare fuori i dati dal mio database di Base ed esportarli altrove...

Grazie per le info!
__________________
Non è morto ciò che in eterno può attendere,
E con il passare di strane ere anche la morte muore.
dark.shark.dsk è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 18:18   #8
emmedi
Senior Member
 
Iscritto dal: Dec 2000
Città: Pozzomaggiore (SS)
Messaggi: 12582
Solo per dire che base è in grado di interfacciarsi a mysql; per maggiori informazioni consulta la guida presente in questa pagina:
http://www.softcombn.com/joomla/inde...d=28&Itemid=46
emmedi è offline   Rispondi citando il messaggio o parte di esso
Old 29-07-2009, 21:44   #9
dark.shark.dsk
Senior Member
 
Iscritto dal: Sep 2004
Messaggi: 324
Grasssie per il link
Mi sa che oltre alla perte relativa all'interfaccia con i db mysql cercherò di dare una lettura a tutta la guida..
__________________
Non è morto ciò che in eterno può attendere,
E con il passare di strane ere anche la morte muore.
dark.shark.dsk è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Attenti a Poco F7: può essere il best buy del 2025. Recensione Attenti a Poco F7: può essere il best buy...
Recensione Samsung Galaxy Z Fold7: un grande salto generazionale Recensione Samsung Galaxy Z Fold7: un grande sal...
The Edge of Fate è Destiny 2.5. E questo è un problema The Edge of Fate è Destiny 2.5. E questo ...
Ryzen Threadripper 9980X e 9970X alla prova: AMD Zen 5 al massimo livello Ryzen Threadripper 9980X e 9970X alla prova: AMD...
Acer TravelMate P4 14: tanta sostanza per l'utente aziendale Acer TravelMate P4 14: tanta sostanza per l'uten...
Intel, le rese del processo 18A gettano ...
Nuove scorte per il portatile Lenovo con...
AirPods Pro 2 tornano a 199€, ma anche S...
Grok Imagine: evoluzione dell'IA o nuova...
L'Italia saluta anche IVECO: finalizzata...
Summer Black Friday: spendi meno e godit...
Half-Life 3? No, Gabe Newell produrr&agr...
Apple al lavoro su un sensore che "...
TSMC vittima di spionaggio industriale s...
Cooler Master MasterFrame 500: un flusso...
Apple accelera sull'IA interna: c'&egrav...
I robotaxi arrivano in Europa: Lyft e Ba...
Ancora voci sul mega tablet pieghevole d...
Un computer quantistico con 10.000 qubit...
AVM cambia nome e faccia: ora si chiama ...
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: 07:53.


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