- Home
- Categorie
- Coding e Sistemistica
- MYSQL e altri Database
- calcoli con mysql
-
calcoli con mysql
Salve a tutti,
non sono pratico del linguaggio mysql e cercando di documentarmi sui manuali php mysql trovati in rete non sono riuscito lo stesso a capire come risolvere il mio problema che espongo schematicamente:Ho fatto un form che una volta compilato inserisce per la maggior parte valori numerici in una tabella A;
Fin qui tutto va bene solo che vorrei estrapolare da una cella della tabella A un numero per moltiplicarlo a ciascun record di una colonna che si trova in un 'altra tabella B e sommarlo a un altro numero di un'altra colonna della stessa tabella B.
La stessa operazione va ripetuta per altri numeri seguendo lo stesso procedimento.
Alla fine il risultato del calcolo è inviato per email al cliente.Purtroppo non so in che modo strutturare le istruzioni, perchè si tratta di prendere uno specifico record della tabella A e moltiplicarlo a ciascun numero di una colonna di un'altra tabella . Preciso che tra le due tabelle non c'è nessuna relazione.
Grazie in anticipo a chi mi può aiutare
-
posta la struttura delle tabelle!!!
-
SELECT ... ,(tabella1.campo1 * tabella.campo) AS risultato
-
Posto le due tabelle in maniera riassuntiva :
CREATE TABLE
clienti
(
id
int(11) NOT NULL auto_increment,
cognome
varchar(15) NOT NULL default '',
nome
varchar(15) NOT NULL default '',
e_mail
varchar(15) NOT NULL default '',
n_telefono
varchar(14) NOT NULL default '0',
prima casa
varchar(2) unsigned NOT NULL default '0',
rendita_catastale
smallint(3,2) unsigned NOT NULL default '0',
PRIMARY KEY (id
)la tabella clienti è inserita mediante un form dal cliente .
Io invece ho inserito i dati nella tabella ici:CREATE TABLE
ici
idici
smallint(5) unsigned NOT NULL auto_increment,
percentuale_fissa
float(3) default NULL,
percentuale_cento
float(3) default NULL,
aliquota_ici
float(4,2) default NULL,
aliquota_ici_sec
float(4,2) default NULL,PRIMARY KEY (
idici
),la prima tabella è compilata dal cliente, dopo di che io vorrei prelevare ciascun record della colonna rendita_catastale sommarlo al prodotto tra rendita catastale e percentuale_fissa e moltiplicare il tutto all'aliquota ici.
Il risultato del calcolo vorrei memorizzarlo nella tabella (la seconda ici mi sembra la scelta più giusta) e poi inviare al cliente il risultato stesso.
Le tabelle non sono complete dei campi però sono rappresentative della struttura che ho fatto.
Spero che si possa fare tutto ciò.
-
Fai come ti ho detto prima...
-
scusa l'ignoranza tu mi hai risposto di fare in questo modo
SELECT ... ,(tabella1.campo1 * tabella.campo) AS risultato
ma la sintassi esatta dopo select qual'è? perchè si tratta di prendere i dati da colonne di due tabelle diverse.
-
SELECT clienti.,ici.,(clienti.rendita_catastale + ici.campo) AS risultato FROM clienti INNER JOIN ici ON clienti.id=ici.idici
-
mi da questo errore dopo che ho inserito la riga da te scritta:
bash: syntax error near unexpected token `('
-
Posta il codice che hai messo...
-
ecco qui di seguito, premetto che io uso mysql su ubuntu se può essere utile l'informazione:
SELECT clienti.,ici.,(clienti.rendita_catastale +ici.aliquota_ici)AS risultato FROM clienti INNER JOIN ici ON clienti.id=ici.idici;
-
scusa, ho sbagliato io.
Ero uscito da mysql e l'errore che ti ho inviato era riferito perchè inserivo la select da terminale ubuntu.Stacco perchè altrimenti faccio altri casini.
Riprendo a mente più lucida