dunque, il codice che ho fatto serve per calcolare media e deviazione standard di alcune variabili:
$query="SELECT
AVG(test_arousal_photo1) as a1,
AVG(test_valence_photo1) as v1,
AVG(test_arousal_photo2) as a2,
AVG(test_valence_photo2) as v2,
AVG(test_arousal_photo3) as a3,
AVG(test_valence_photo3) as v3,
AVG(test_arousal_photo4) as a4,
AVG(test_valence_photo4) as v4,
AVG(test_arousal_photo5) as a5,
AVG(test_valence_photo5) as v5,
AVG(test_arousal_photo6) as a6,
AVG(test_valence_photo6) as v6,
AVG(test_arousal_photo7) as a7,
AVG(test_valence_photo7) as v7,
AVG(test_arousal_photo8) as a8,
AVG(test_valence_photo8) as v8,
AVG(test_arousal_photo9) as a9,
AVG(test_valence_photo9) as v9,
AVG(test_arousal_photo10) as a10,
AVG(test_valence_photo10) as v10 FROM messaggi ";
$ris = mysql_query($query);
$rs = mysql_fetch_array($ris);
echo "
average arousal
". $rs["a1"];
echo"
" . $rs["a2"];
echo "
" .$rs["a3"];
echo"
" . $rs["a4"];
echo "
" .$rs["a5"];
echo"
" . $rs["a6"];
echo "
" .$rs["a7"];
echo"
" . $rs["a8"];
echo "
" .$rs["a9"];
echo "
" .$rs["a10"];
echo "
average valence
" . $rs["v1"];
echo "
" .$rs["v2"];
echo "
" .$rs["v3"];
echo "
" .$rs["v4"];
echo"
" . $rs["v5"];
echo"
" . $rs["v6"];
echo"
" . $rs["v7"];
echo"
" . $rs["v8"];
echo"
" . $rs["v9"];
echo"
" . $rs["v10"];
$query="SELECT
STD(test_arousal_photo1) as a1,
STD(test_valence_photo1) as v1,
STD(test_arousal_photo2) as a2,
STD(test_valence_photo2) as v2,
STD(test_arousal_photo3) as a3,
STD(test_valence_photo3) as v3,
STD(test_arousal_photo4) as a4,
STD(test_valence_photo4) as v4,
STD(test_arousal_photo5) as a5,
STD(test_valence_photo5) as v5,
STD(test_arousal_photo6) as a6,
STD(test_valence_photo6) as v6,
STD(test_arousal_photo7) as a7,
STD(test_valence_photo7) as v7,
STD(test_arousal_photo8) as a8,
STD(test_valence_photo8) as v8,
STD(test_arousal_photo9) as a9,
STD(test_valence_photo9) as v9,
STD(test_arousal_photo10) as a10,
STD(test_valence_photo10) as v10 FROM messaggi ";
$ris = mysql_query($query);
$rs = mysql_fetch_assoc($ris);
echo "
standard deviation arousal
". $rs["a1"];
echo"
" . $rs["a2"];
echo "
" .$rs["a3"];
echo"
" . $rs["a4"];
echo "
" .$rs["a5"];
echo"
" . $rs["a6"];
echo "
" .$rs["a7"];
echo"
" . $rs["a8"];
echo "
" .$rs["a9"];
echo "
" .$rs["a10"];
echo "
standard deviation valence
" . $rs["v1"];
echo "
" .$rs["v2"];
echo "
" .$rs["v3"];
echo "
" .$rs["v4"];
echo"
" . $rs["v5"];
echo"
" . $rs["v6"];
echo"
" . $rs["v7"];
echo"
" . $rs["v8"];
echo"
" . $rs["v9"];
echo"
" . $rs["v10"];
e va tutto bene, in echo mi rilascia i giusti risulatati.
pero', ho creato un db cosi' e al momento contiene alcuni utenti :
-- phpMyAdmin SQL Dump
-- version 2.6.1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Generato il: 25 Apr, 2008 at 04:06 PM
-- Versione MySQL: 4.1.9
-- Versione PHP: 4.3.10
--
-- Database: `guest_book`
--
-- --------------------------------------------------------
--
-- Struttura della tabella `messaggi`
--
CREATE TABLE `messaggi` (
`id_user` int(10) NOT NULL auto_increment,
`username` varchar(65) NOT NULL default '',
`password` varchar(65) NOT NULL default '',
`user` varchar(20) NOT NULL default '',
`gender` varchar(10) NOT NULL default '',
`date_of_birth` date NOT NULL default '0000-00-00',
`country` varchar(30) NOT NULL default '',
`test_arousal_photo1` tinyint(3) default NULL,
`test_valence_photo1` tinyint(3) default NULL,
`test_arousal_photo2` tinyint(3) default NULL,
`test_valence_photo2` tinyint(3) default NULL,
`test_arousal_photo3` tinyint(3) default NULL,
`test_valence_photo3` tinyint(3) default NULL,
`test_arousal_photo4` tinyint(3) default NULL,
`test_valence_photo4` tinyint(3) default NULL,
`test_arousal_photo5` tinyint(3) default NULL,
`test_valence_photo5` tinyint(3) default NULL,
`test_arousal_photo6` tinyint(3) default NULL,
`test_valence_photo6` tinyint(3) default NULL,
`test_arousal_photo7` tinyint(3) default NULL,
`test_valence_photo7` tinyint(3) default NULL,
`test_arousal_photo8` tinyint(3) default NULL,
`test_valence_photo8` tinyint(3) default NULL,
`test_arousal_photo9` tinyint(3) default NULL,
`test_valence_photo9` tinyint(3) default NULL,
`test_arousal_photo10` tinyint(3) default NULL,
`test_valence_photo10` tinyint(3) default NULL,
`date` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`id_user`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 PACK_KEYS=0 AUTO_INCREMENT=694 ;
--
-- Dump dei dati per la tabella `messaggi`
--
INSERT INTO `messaggi` VALUES (689, ' top', ' e358efa489f58062f10dd7316b65649e', '0', '0', '0000-00-00', 'selected', 1, 1, 1, 1, 0, 0, -1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 1, 1, -1, -1, '2008-04-24 14:19:41');
INSERT INTO `messaggi` VALUES (688, ' er', ' e1671797c52e15f763380b45e841ec32', '0', '0', '0000-00-00', 'selected', 1, 1, 1, 1, 0, 0, -1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 1, 1, -1, -1, '2008-04-24 14:19:31');
INSERT INTO `messaggi` VALUES (687, ' er', ' e1671797c52e15f763380b45e841ec32', '0', '0', '0000-00-00', 'selected', 1, 1, 1, 1, 0, 0, -1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 1, 1, -1, -1, '2008-04-24 14:17:45');
INSERT INTO `messaggi` VALUES (686, '', '', '0', '0', '0000-00-00', 'selected', 1, 1, 1, 1, 0, 0, -1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 1, 1, -1, -1, '2008-04-24 14:17:07');
INSERT INTO `messaggi` VALUES (685, '', '', '0', '0', '0000-00-00', 'selected', 1, 1, 1, 1, 0, 0, -1, 0, -1, 0, 0, 0, 0, 0, 0, 0, 1, 1, -1, -1, '2008-04-24 14:12:35');
INSERT INTO `messaggi` VALUES (684, '', '', '0', '0', '0000-00-00', 'selected', 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '2008-04-24 01:23:40');
INSERT INTO `messaggi` VALUES (683, '', '', 'researcher', 'female', '1977-00-00', 'selected', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '2008-04-24 01:21:59');
INSERT INTO `messaggi` VALUES (690, ' erte', ' e1671797c52e15f763380b45e841ec32', 'researcher', 'female', '1978-02-27', 'VA', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '2008-04-25 11:58:14');
INSERT INTO `messaggi` VALUES (691, ' erte', ' e1671797c52e15f763380b45e841ec32', 'researcher', 'female', '1978-02-27', 'VA', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '2008-04-25 11:58:29');
INSERT INTO `messaggi` VALUES (692, ' ere', ' e1671797c52e15f763380b45e841ec32', 'researcher', 'female', '1978-02-27', 'VA', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '2008-04-25 11:58:42');
INSERT INTO `messaggi` VALUES (693, '', '', 'researcher', 'female', '1978-02-27', 'VA', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '2008-04-25 12:34:50');
quindi, nei valori numerici che ho messo tinyint, il valore nullo, non è nullo ma zero.
io vorrei che fosse nullo il valore se il campo è vuoto e che non venisse conteggiato nelle statistiche.
grazie infinite per l'interesse

Rispondi quotando