ОК, отчасти трудно найти этот вопрос в качестве правильного названия, поскольку я не уверен, что бы вы назвали этой функцией.MySQL, как дать строке определенное число
Итак, у меня есть таблица под названием категории, она содержит ID, ParentID, Name, OrderNo плюс еще несколько.
Что я хочу сделать, это дать каждой категории OrderNo, по номеру заказа я имею в виду, если моя категория дерево выглядит следующим образом:
Computers
Computers > Laptops
Computers > Desktops
Computers > Components > Hard Drives
Computers > Components > Monitors
TVs
TVs > LED
TVs > LCD
Так я просто хочу, чтобы дать каждой категории значение для OrderNo, которая начинается от 1. Так
Computers 1
Computers > Laptops 1
Computers > Desktops 2
Computers > Components 3
Computers > Components > Hard Drives 1
Computers > Components > Monitors 2
TVs 2
TVs > LED 1
TVs > LCD 2
Надеемся, что это имеет смысл, что он пытается объяснить, что я пытаюсь сделать. К сожалению, я понятия не имею, как будет вызвана такая функция, иначе я бы это сделал.
Мой первоначальный оператор выбора будет выглядеть примерно так:
select ID,ParentID,Name,OrderNo
from categories
Order by ParentID,ID
но не знаю, как продвигать его дальше. К сожалению для мусора объяснения Заранее спасибо Джон
Может быть, вы можете найти что-то полезное здесь: Http: // mikehillyer .com/articles/manage-hierarchical-data-in-mysql/ – Barmar
Значит, вам нужен индекс уровня в иерархических данных? – Orbling
@ Испуганно, да, наверное. – user2231688