Не уверенный, если это возможно, но мог бы быть творческий подход...
Учитывая эти данные в SQL Server 2005:
AAA
AAA
BBB
BBB
CCC
CCC
DDD
DDD
Как мог я возвращать набор результатов, отсортированный в шаблоне как это:
AAA
BBB
CCC
DDD
AAA
BBB
CCC
DDD
Если бы ваш столбец назывался "col", а ваша таблица называлась "table", я бы попробовал что-то вроде этого:
WITH Indexes AS (
SELECT
ROW_NUMBER() OVER (PARTITION BY col ORDER BY col) as __row,
col
FROM table)
SELECT col
FROM Indexes
ORDER BY __row, col;
Похоже, вам нужен настроенный ListBox (несколько предметы, которые можно выбрать или щелкнуть). Для макета необходимо использовать некоторый тип RadityPanel в качестве IturePanel. Вероятно, также необходимо изменить ItemContainerStyle, чтобы элемент ListЛосипItems выглядел так, как указано выше, вероятно, с некоторыми триггерами для изменения цветов в зависимости от состояния выбора. В зависимости от того, какое поведение вам нужно из предметов, возможно, вам потребуется создать пользовательские элементы управления, производные от ListBox/ListAxItem, но во многих случаях встроенное поведение даст вам долгий путь. Чтобы повторно использовать его как единое целое, можно свернуть ListBox с его 24-часовыми предметами и настраиваемыми шаблонами в UserControl и представить данные выбора в любой форме, которая вам нужна, как свойство Dependency (например, IEnumerable предметов данных, представляющих выбранные часы).
Помогает ли это начать?
-121--3397711-Если бы ваш столбец назывался «col», а ваша таблица называлась «table», я бы попробовал что-то подобное:
WITH Indexes AS (
SELECT
ROW_NUMBER() OVER (PARTITION BY col ORDER BY col) as __row,
col
FROM table)
SELECT col
FROM Indexes
ORDER BY __row, col;
-121--4998134- Mysql, предполагая, что у вас есть таблица T (варчар); с предоставленными данными:
select @t:=a from T order by @t <> a;
работает: -)
Не знаю, работает ли это, но в Oracle я бы попытался создать представление, в котором вы используете ROWNUM в запросе вашего представления.
Затем запросите представление и отсортируйте его по:
У меня нет базы данных, чтобы проверить это, но этот совет может дать вам некоторые идеи.