Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте!
есть вот такая таблица
-
-- Структура таблицы `oo`
--
CREATE TABLE `oo` (
`god` int(4) NOT NULL default '0',
`klass` tinyint(2) NOT NULL default '0',
`fio` varchar(30) NOT NULL default '',
`rp_dz` tinyint(1) NOT NULL default '0',
`ips` tinyint(1) NOT NULL default '0',
`our` tinyint(1) NOT NULL default '0',
`t4` tinyint(1) NOT NULL default '0',
`tp` tinyint(1) NOT NULL default '0',
`tv` tinyint(1) NOT NULL default '0',
`oku` tinyint(1) NOT NULL default '0',
`okk` tinyint(1) NOT NULL default '0',
`okr` tinyint(1) NOT NULL default '0',
`okt` tinyint(1) NOT NULL default '0',
PRIMARY KEY (`god`,`klass`,`fio`)
) TYPE=MyISAM;
С примари кей по трем первым полям.
В эту таблицу вносятся данные на людей. На каждый год - одна запись на человека.
Нужно выбрать данные из конкретных полей на одного человека за все годы, что было внесено.
SELECT `god`, `okt` FROM `oo` WHERE `fio`='$fio'; - не работает. Выбирает только за один первый год. А надо - за все годы.
Может цикл какой применить?
Неактивен
test >CREATE TABLE `oo` (
-> `god` int(4) NOT NULL default '0',
-> `klass` tinyint(2) NOT NULL default '0',
-> `fio` varchar(30) NOT NULL default '',
-> `rp_dz` tinyint(1) NOT NULL default '0',
-> `ips` tinyint(1) NOT NULL default '0',
-> `our` tinyint(1) NOT NULL default '0',
-> `t4` tinyint(1) NOT NULL default '0',
-> `tp` tinyint(1) NOT NULL default '0',
-> `tv` tinyint(1) NOT NULL default '0',
-> `oku` tinyint(1) NOT NULL default '0',
-> `okk` tinyint(1) NOT NULL default '0',
-> `okr` tinyint(1) NOT NULL default '0',
-> `okt` tinyint(1) NOT NULL default '0',
-> PRIMARY KEY (`god`,`klass`,`fio`)
-> ) TYPE=MyISAM;
Query OK, 0 rows affected, 1 warning (0.20 sec)
test >insert into `oo` (god,klass,fio) values(1,1,'fio');
Query OK, 1 row affected (0.13 sec)
test >insert into `oo` (god,klass,fio) values(2,1,'fio');
Query OK, 1 row affected (0.00 sec)
test >SELECT `god`, `okt` FROM `oo` WHERE `fio`=fio;
+-----+-----+
| god | okt |
+-----+-----+
| 1 | 0 |
| 2 | 0 |
+-----+-----+
2 rows in set (0.09 sec)
Я полагаю, что знак доллара в Вашей записи лишь символизирует переменную и Вы не используете его в запросе.
Неактивен
Цикл надо организовать уже в PHP после выполнения запроса.
Неактивен
угу, понял... Спасибо!
Неактивен