Hello Matthew,

Friday, December 5, 2003, 2:12:08 AM, you wrote:

thanks, but some more see below.

[skipped]
>> I have some table:
>> /* BEGIN DUMP *************************************************/
>> CREATE TABLE `sp_tovar_vid` (
>>   `id` int(11) NOT NULL auto_increment,
>>   `id_tovar_vid` int(11) NOT NULL default '0',
>>   `name` varchar(100) NOT NULL default '',
>>   `description` varchar(255) NOT NULL default '',
>>   UNIQUE KEY `id` (`id`)
>> );
>>
>> INSERT INTO `sp_tovar_vid` VALUES (0, 0, 'root', 'root category');
>> INSERT INTO `sp_tovar_vid` VALUES (7, 0, 'cat.1', '');
>> INSERT INTO `sp_tovar_vid` VALUES (8, 0, 'cat.2', '');
>> INSERT INTO `sp_tovar_vid` VALUES (9, 0, 'cat.3', '');
>> INSERT INTO `sp_tovar_vid` VALUES (10, 0, 'cat.4', '');
>> INSERT INTO `sp_tovar_vid` VALUES (11, 0, 'cat.5', '');
>> INSERT INTO `sp_tovar_vid` VALUES (12, 7, 'subcat 1', '(to cat.1)');
>> INSERT INTO `sp_tovar_vid` VALUES (13, 7, 'subcat 2', '(to cat.1)');
>> INSERT INTO `sp_tovar_vid` VALUES (14, 7, 'subcat 3', '(to cat.1)');
>> INSERT INTO `sp_tovar_vid` VALUES (15, 9, 'subcat 1', '(to cat.3)');
>> INSERT INTO `sp_tovar_vid` VALUES (16, 9, 'subcat 2', '(to cat.3)');
>> INSERT INTO `sp_tovar_vid` VALUES (17, 9, 'subcat 3', '(to cat.3)');
>> INSERT INTO `sp_tovar_vid` VALUES (18, 13, 'subsubcat 1', '(to subcat.2
>> to cat.1)');
>> /* END DUMP ****************************************************/
>>
[skipped]
>> _QUESTION 2_: how to display table with columns=
>> ('parent_category.name' ,'category.name')?
>> i tried this:
>> /***/
>> SELECT t1.`name`,t2.`name` FROM `sp_tovar_vid` AS t1, `sp_tovar_vid`
>> AS t2 WHERE t1.`id`=t2.`id_tovar_vid` ORDER BY t1.`name`,t2.`name`;
>> /***/
>> How to make it more simply?
>>
>> _QUESTION 3_: how to display string:
>> "subsubcat 1 - subcat.2 - cat.1"
>> if we have only `id`=18 ?
>>

M> use SELECT IF(id=18, true_expression, false expression) FROM table...
M> I'm not clear what you mean by "subsubcat 1 - subcat.2 - cat.1"... minus, or
M> some sort of string concatenation?
M> true expression might be field1 - field2, or CONCAT(field1, field2, ...)

elucidation: i need to run recurse search to build string shown.
it means: if we have `id`=18, we must build following string after
mentioned recurse search runnnig.

string: "subsubcat 1" + "subcat 2" + "cat.1" + "root"

it's tree:
/**/
root (`id`=0, `parent`=0)
|--cat.1 (`id`=7, `parent`=0)
| |-subcat 1
| |--subcat 2 (`id`=13, `parent`=7)
| | |-subsubcat 1 (`id`=18, `parent`=13)
| |-subcat 3
|-cat.2
|--cat.3
| |-subcat 1
| |-subcat 2
| |-subcat 3
|-cat.4
|-cat.5
/**/

-- 
Best regards,
 Alex                            mailto:[EMAIL PROTECTED]


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to