У меня есть таблица, которая содержит имя, цвет1, цвет2, color3 и другие столбцы (SQLite):SQL-группы по 3 колонки со специальной функцией
CREATE TABLE data (name TEXT, lvlavailable INTEGER, lvlExtra TEXT,
color1 TEXT, color2 TEXT, color3 TEXT);
текущие данные
INSERT INTO "someTable" VALUES ("name","Amarillo","NoColor","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","NoColor","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Azul","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Azul","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Rojo","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Rojo","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Rojo","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Rojo","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Rojo","Verde");
INSERT INTO "someTable" VALUES ("name","Amarillo","Verde","NoColor");
INSERT INTO "someTable" VALUES ("name","Amarillo","Violeta","NoColor");
INSERT INTO "someTable" VALUES ("name","Azul","NoColor","NoColor");
INSERT INTO "someTable" VALUES ("name","Azul","NoColor","NoColor");
INSERT INTO "someTable" VALUES ("name","Azul","Amarillo","NoColor");
INSERT INTO "someTable" VALUES ("name","Azul","Amarillo","NoColor");
INSERT INTO "someTable" VALUES ("name","Azul","Amarillo","NoColor");
INSERT INTO "someTable" VALUES ("name","Azul","Amarillo","Rojo");
Колонка имя в этом случае не имеет значения * Я знаю, что вставки неверны из-за количества столбцов, но я думаю, что вы получаете идею *
ток оператор выбора:
SELECT name,
color1,
CASE WHEN color2 = 'NoColor' THEN '' ELSE color2 END as color2,
CASE WHEN color3 = 'NoColor' THEN '' ELSE color3 END as color3
FROM someTable
GROUP BY color1,color2,color3,name
случае является для других целей
текущего результат:
name Amarillo
name Amarillo
name Amarillo Azul
name Amarillo Azul
name Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo Verde
name Amarillo Verde
name Amarillo Violeta
name Azul
name Azul
name Azul Amarillo
name Azul Amarillo
name Azul Amarillo
name Azul Amarillo Rojo
названия цветов на испанском языке, жаль, что
желаемый результат:
name Amarillo
name Amarillo
name Amarillo Azul
name Amarillo Azul
name Azul Amarillo
name Azul Amarillo
name Azul Amarillo
name Azul Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo
name Amarillo Rojo Verde
name Amarillo Verde
name Amarillo Violeta
name Azul
name Azul
обратите внимание, что, когда он попадает в группу Амарильо, Azul, [пусто], он будет продолжать с Амарилло, Azul с независимостью от в колонке Wich каждый цвет, но я хочу, чтобы сохранить оригинальный цвет позицию столбца, как и я не хочу создавать другой столбец, только что заказанный.
Итак, я хочу, чтобы те группы, которые имеют одинаковые цвета, но в другом порядке, вместе.
Возможно ли это?
обеспечьте хорошую структуру таблицы. это создает довольно путаницу. – Anvesh
обновлено @Anvesh –
Не могли бы вы предоставить хороший набор результатов, в вашем результирующем наборе три колонки есть, но есть ли все три цвета? Я думаю, что последние две колонки - это цветная колонка. если возможно, пожалуйста, укажите образцы данных и результат выборки – Anvesh