|
|
|
| Здравствуйте, помогите пожалуйста мне в разрешении следующих вопросов:
1) К примеру мне необходимо сделать так, чтобы данные из <html> формы (которые я беру из текстовых полей) добовлялись "каждый в свою ячеку столбца таблицы". Подскажите пожалуйста как я смогу это сделать. В свою очередь я попробывал сделать через UPDATE:
mysql_query("UPDATE $NameTable SET $NameField='$_POST[$NameField]' WHERE Login=$SesPerem");
Этот запрос работает, но как "мне" кажется немного странно... Потому что когда я прописываю значения в полях формы и далее отсылаю их обработчику, ПО запросу обрабатываются только: либо численные значения, либо значения буквенные с обязательным содержанием в них чисел ?
Т.е. задаю я всем полям числа (любые: 125548) или(1State) в качестве значений по запросу они отсылаются в базу --> таблицу и производится обновление тех записей которые были раньше в ячейка таблицы. Но когда я пытаюсь (по запросу) отправить что-то вроде (State или др), то данные не обновляются ???
Или по другому быть не может и мне нужно использовать INSERT (т.е. брать обсолютно все данные из полей и производить удаление всех старых записей с последующей вставкой новых в таблицу (но это всё получится громоздко...))
2) Ещё подскажите, как можно построить сложный запрос...
Тоже ... к примеру мне нужно получить определённый максимальный результат (по запросу), но над этим результатом мне сначала нужно произвести расчёт функцией "count()".
П:
SELECT Count( Ugoni.KodTransportnogoSredstva ) As KodTr , OpisanieTransporta.KodTransportnogoSredstva
FROM Ugoni , OpisanieTransporta
WHERE Ugoni.KodTransportnogoSredstva = OpisanieTransporta.KodTransportnogoSredstva
GROUP BY Ugoni.KodTransportnogoSredstva
LIMIT 0 , 30
################
Цель моего вопроса:
Можно ли каким-нибудь образом этот запрос преобразовать так, чтобы найти ещё и Max(KodTr) и если это возможно не могли бы "Вы" приписать доп. код.
Заранее Всем Спасибо ! | |
|
|
|
|
|
|
|
для: CompilR
(17.02.2007 в 04:16)
| | 1. Какую структуру имеет таблица $NameTable (получить её можно при помощи запроса SHOW CREATE TABLE)?
2. Отсортируйте результирующую таблицу запроса по полю KodTr - перевая строка в результирующей таблице будет максимальное значение
SELECT Count( Ugoni.KodTransportnogoSredstva ) As KodTr , OpisanieTransporta.KodTransportnogoSredstva
FROM Ugoni , OpisanieTransporta
WHERE Ugoni.KodTransportnogoSredstva = OpisanieTransporta.KodTransportnogoSredstva
GROUP BY Ugoni.KodTransportnogoSredstva
ORDER BY KodTr DESC
LIMIT 0 , 30
|
PS Под разные вопросы лучше заводить разные темы | |
|
|
|
|
|
|
|
для: cheops
(17.02.2007 в 13:23)
| | ВСЕМ Здравствуйте
Отвечаю на первый Вопрос:
Структура таблицы, которая записана в переменную $NameTable следующая (из запроса SHOW CREATE TABLE):
##########################
CREATE TABLE `users` (\n `Login` varchar(20) NOT NULL default '',\n `Password` varchar(10) NOT NULL default '',\n `Email` varchar(20) NOT NULL default '',\n `ICQ_Number` varchar(15) NOT NULL default '',\n `Hobby` text NOT NULL,\n `Otkuda` varchar(50) NOT NULL default '',\n `KontrQuestion` varchar(50) NOT NULL default '',\n `KontrOtvet` varchar(50) NOT NULL default '',\n PRIMARY KEY (`Login`,`Password`,`Email`)\n) ENGINE=MyISAM DEFAULT CHARSET=cp1251
##########################
Замечание: "Под разные вопросы лучше заводить разные темы"
Ответ: В следующий раз "УЧТУ".
................................................................................
Спасибо Вам большое за готовый запрос по 2-му вопросу !
Скажите, а вот если по этому запросу выбирется (2 или 3 или n+1) MAX результата, то как мне их вывести (т.е. когда эти значения будут равны и они все будут "Максисмальны") ?
"С одним ...Max(результатом).... так: LIMIT 0,1"
Возможно ли так, чтобы именно выбрались MAX значения (т.е. не руками прописывать (LIMIT), а "автоматом" или это нужно при помощи скриптов на PHP делать)??? | |
|
|
|
|
|
|
|
для: CompilR
(18.02.2007 в 06:10)
| | 1) А запросом каким обновляете - действительно странно, скорее всего где-то в PHP-обработчике происходит сбой? Попробуйте вывести SQL-запрос на обновление в окно браузера и выполнить его при помощи какого-нибудь клиента MySQL.
2) Лучше это делать при помощи PHP-скрипта. | |
|
|
|