Помогите составить запрос

D
На сайте с 28.06.2008
Offline
988
535

Есть таблица с такой структурой

CREATE TABLE IF NOT EXISTS `jos_categories` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`asset_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'FK to the #__assets table.',
`parent_id` int(10) unsigned NOT NULL DEFAULT '0',
`lft` int(11) NOT NULL DEFAULT '0',
`rgt` int(11) NOT NULL DEFAULT '0',
`level` int(10) unsigned NOT NULL DEFAULT '0',
`path` varchar(255) NOT NULL DEFAULT '',
`extension` varchar(50) NOT NULL DEFAULT '',
`title` varchar(255) NOT NULL,
`alias` varchar(255) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL DEFAULT '',
`note` varchar(255) NOT NULL DEFAULT '',
`description` mediumtext NOT NULL,
`published` tinyint(1) NOT NULL DEFAULT '0',
`checked_out` int(11) unsigned NOT NULL DEFAULT '0',
`checked_out_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`access` int(10) unsigned NOT NULL DEFAULT '0',
`params` text NOT NULL,
`metadesc` varchar(1024) NOT NULL COMMENT 'The meta description for the page.',
`metakey` varchar(1024) NOT NULL COMMENT 'The meta keywords for the page.',
`metadata` varchar(2048) NOT NULL COMMENT 'JSON encoded metadata properties.',
`created_user_id` int(10) unsigned NOT NULL DEFAULT '0',
`created_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`modified_user_id` int(10) unsigned NOT NULL DEFAULT '0',
`modified_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`hits` int(10) unsigned NOT NULL DEFAULT '0',
`language` char(7) NOT NULL,
PRIMARY KEY (`id`),
KEY `cat_idx` (`extension`,`published`,`access`),
KEY `idx_access` (`access`),
KEY `idx_checkout` (`checked_out`),
KEY `idx_path` (`path`),
KEY `idx_left_right` (`lft`,`rgt`),
KEY `idx_alias` (`alias`),
KEY `idx_language` (`language`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=258 ;

Хочу добавить СЛОВО перед названием категории `title`, но не ко всем, а только тем, которые имеют `level` = 1

Как это сделать?

Как то так.... UPDATE `jos_categories` SET `title` = concat(СЛОВО,' title') ....а вот тут условие про level

palladin_jedi
На сайте с 13.07.2010
Offline
71
#1
Dram:
.а вот тут условие про level

WHERE level = 1?

Сайт о web-разработке и прочем (http://seazo.net)||Продвижение статьями под Google (http://short.seazo.net/ght4zf) Бесплатные консультации рефералам Sape (http://www.sape.ru/r.SWfwWOblBo.php) PHP и JS скрипты на заказ, создание сайтов с нуля и на CMS.
maldivec
На сайте с 04.11.2008
Offline
160
#2
palladin_jedi:

Dram:
.а вот тут условие про level

WHERE level = 1?

КЭП в шоке :D

D
На сайте с 28.06.2008
Offline
988
#3

Ввел запрос

UPDATE `jos_categories` SET `title` = concat(СЛОВО,' title') WHERE level = 1

и получил #1064 - You have an error in your SQL syntax

Все ли кавычки правильно указаны в запросе?

RO
На сайте с 13.07.2009
Offline
88
#4
Dram:
Ввел запрос

и получил #1064 - You have an error in your SQL syntax

Все ли кавычки правильно указаны в запросе?

нужно было написать полный текст ошибки, там явно указано в каком месте ошибка синтаксиса. а вообще, первый объединяющий параметр в concat пишется в кавычках.

maldivec
На сайте с 04.11.2008
Offline
160
#5
Dram:
Все ли кавычки правильно указаны в запросе?

Это либо троллинг, либо атрофия мозга...

D
На сайте с 28.06.2008
Offline
988
#6

Запрос

UPDATE `jos_categories` SET `title` = concat('СЛОВО',' 'title')

ошибка

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '')' at line 1

RO
На сайте с 13.07.2009
Offline
88
#7
Dram:
Запрос

ошибка

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '')' at line 1

посчитай количество кавычек

D
На сайте с 28.06.2008
Offline
988
#8

Понял, спасибо!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий