|
|
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Прошу помочь перевести на язык MYSQL то, что я попытался оформить следующим псевдокодом: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2015, 17:18:30 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Немного продвинулся: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Сейчас ошибка указывает на FOR EACH @category_id IN temp_cat_id Скажите, как в цикле можно перебирать каждое значение определённого столбца в таблице строка за строкой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2015, 17:48:37 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Какой-то корявый псевдокод... Ты передаёшь в процедуру скалярное значение @parent_category_id. Затем кладёшь его в таблицу @temp_cat_id (получается ОДНА запись). Затем зачем-то организуешь переборную итерацию (For Each) по этому единственному значению - нафига? Уж лучше словами объясни, чего надо сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2015, 17:51:49 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Борис Гаркункак в цикле можно перебирать каждое значение определённого столбца в таблице строка за строкой?Курсором... только вот зачем ПЕРЕБИРАТЬ? SQL позволяет обработать всё сразу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2015, 17:53:02 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Вообще, как я понимаю, ты хочешь организовать итерационный сбор всех то ли родителей, то ли потомков... так? Присоединяю код - это я делал (уж не помню когда и зачем) пример реализации волнового алгоритма для MySQL. Задача хоть и другая, но суть та же - итерационное сгребание в кучку по матрице связности. Посмотри, вдруг поможет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.08.2015, 20:16:56 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Да, вы правильно поняли. Нужно вытащить все дочерние подкатегории указанной параметром категории. При этом дочерние подкатегории хранятся в таблице вида CREATE TABLE `ytgb1_virtuemart_category_categories` ( `id` int(1) unsigned NOT NULL AUTO_INCREMENT, `category_parent_id` int(1) unsigned NOT NULL DEFAULT '0', `category_child_id` int(1) unsigned NOT NULL DEFAULT '0', `ordering` int(1) NOT NULL DEFAULT '0', ) Это самая пока сложная для меня задача - пройтись по таблице до самой последней подкатегории, какого бы уровня вложенности она не была Спасибо. Буду изучать Ваш пример ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 13:08:32 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
то есть задача составить список всех дочерних подкатегорий указанной категории ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 13:13:43 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Борис Гаркунсоставить список всех дочерних подкатегорий указанной категории 13675569 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 13:37:06 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Спасибо. Пока получается вот такое: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 14:14:00 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
только почему-то возникает ошибка: автор#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 'DECLARE is_there_anybody INT DEFAULT 1; DECLARE last_row INT; WHILE is_there' at line 15 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 14:15:11 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Борис Гаркун, Все DECLARE должны быть первыми в блоке BEGIN ... END. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 15:42:13 |
|
||
|
Помогите перевести это на язык MYSQL
|
|||
|---|---|---|---|
|
#18+
Всех благодарю. Получилось в итоге так: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2015, 17:20:01 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39026545&tid=1832825]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
48ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 345ms |

| 0 / 0 |
