Всё истинное богатство - биологическое.
Вчера делал шабашку, писал челу сайт (PHP+MySQL). Чел, кроме всего прочего, претендует на то, чтобы научиться Web-программированию.
Разбирали CONCAT (ну надо было ему ко всем полям варчарным в табличке дописать одно и то же значние). Сегодня с криком о помощи ("ты будешь смеяться моей <ВЦ>, но опять не получается(((((((((((
почему не записал вчера ((((((((((" ) пишет мне по асе следующее:
UPDATE `catalog` CONCAT (c_name,"<br /><h1>..." )
Думаю, нет, если сам не напишет один раз, ничему же не научится, блин. Ругаю его, шлю читать мануал... Он мне такое:
UPDATE `catalog` CONCAT (c_name,"<br /><h1>..." ) AS `c_name`
Терпение моё на исходе. Промываю мозги на счёт синтаксиса UPDATE, а в результате...
UPDATE `catalog` SET CONCAT (c_name,"<br /><h1>..." )
Слов нет, одни эмоции... Такие вот у нас Web-программисты водятся...
Разбирали CONCAT (ну надо было ему ко всем полям варчарным в табличке дописать одно и то же значние). Сегодня с криком о помощи ("ты будешь смеяться моей <ВЦ>, но опять не получается(((((((((((
почему не записал вчера ((((((((((" ) пишет мне по асе следующее:
UPDATE `catalog` CONCAT (c_name,"<br /><h1>..." )



Думаю, нет, если сам не напишет один раз, ничему же не научится, блин. Ругаю его, шлю читать мануал... Он мне такое:
UPDATE `catalog` CONCAT (c_name,"<br /><h1>..." ) AS `c_name`
Терпение моё на исходе. Промываю мозги на счёт синтаксиса UPDATE, а в результате...
UPDATE `catalog` SET CONCAT (c_name,"<br /><h1>..." )

Слов нет, одни эмоции... Такие вот у нас Web-программисты водятся...
Правильно пишет один из ста. Но это цветочки. Чёрт с ним, с SQL. На вопрос, сколько будет 2/9-1/6 за 20 (!!!) секунд отвечает в лучшем случае один из десяти. А половина вообще не может это сделать без калькулятора. Хотя, я не уверен, что и с ним у них получится.
Навскидку, уж не будет ли
UPDATE table_of_vals SET val = val + 1 WHERE val > AVG(val)
?
Единственно, в чём сомневаюсь, будет ли аггрегатная функция работать в UPDATE'е... (пошёл проверять)
А второе... Знаешь (ничего, что я на "ты" так сразу?), я никогда устно не умел хорошо считать
Первое что пришло в голову, 9*6 = 54, 2*6/54 - 1*9/54 = 3/54. А вот чтобы разделить 54 на 3 без калькулятора меня не хватило...
Тогда только двумя запросами. Сначала узнать среднее SELECT'ом через AVG(val),
а потом обычным UPDATE'ом как было указано ранее.
---
Кстати, сайт выдавал ошибку, когда пытался добавить мессагу с полным выражением SELECT
Типа "не могу обнаружить верную версию diary.php" или нечто подобное. То ли баг, то ли фича,
не дающая делать injection'ы... Пусть админы разбираются.
UPDATE table SET val=val+1 WHERE val<(SELECТ AVG(val) FROM table)
А насчет второго примера - тенденция однако. Современная электроника разжижает мозги, и вместо того, чтобы полагаться только на свои силы и память, люди рассчитывают невесть на что - кто на всемогущие компьютеры, которые якобы думают за людей, кто на интернет - гигантскую кладезь информации, где они всё равно ничего не могут найти - пойди-ка найди иголку в стоге сена, а кто и вообще по-старинке - просто на "авось".
Ну нет воображения
Теперь у молодёжи,
Таблицу умножения
Запомнить уж не может.
Мы лезем вон из кожи
Вплоть до изнеможения,
Чтоб шесть на шесть умножить -
Такое напряжение
Наш разум уничтожит.
Науки достижение
Решить пример поможет -
Под Windows приложение
Нам шесть на шесть умножит,
И это положение
Вещей меня тревожит.
У нас на вооружении
Такое снаряжение,
Что нет соображения,
Нет самоуважения,
Прости за выражение,
Одно лишь торможение
До головокружения,
Мозгов лишь разжижение -
Какое унижение!
Да что там умножение!
Ведь даже и сложения
Осилить мы не сможем,
Мы терпим поражение,
Хотя пример не сложен.