Я задал вопрос ранее сегодня, но у меня есть дополнительный вопрос к тому, который добавляет сложность многозначных полей.
Учитывая следующую таблицу:
ID lightness | darkness | color
------|-------------|--------------|---------
1 |10 | 20 | green, blue, yellow
2 |10 | 08 | green, purple, orange
3 |10 | 10 | black, magenta, orange
4 |20 | 05 | green, creame
5 |10 | 20 | red, purple
6 |10 | 16 | red, white
7 |33 | 20 | brown, red
8 |10 | 10 | green, blue
Я хочу выяснить:
- Количество записей, где цвет имеет яркость 10
- Количество записей, где цвет имеет тьму 20
Итак, окончательновывод будет:
Color | lightness | darkness | Total
---------|-------------|------------|---------
green | 4 | 1 | 5
red | 2 | 2 | 4
Total | 6 | 3 | 9
group by
потеряет свое значение и результаты будут неверными..value
можно использовать в многозначном поле, поэтому я могу сделать следующее: Например:
select * from colortable where color.value = 2
Показать все записи, где есть зеленый
select * from colortable where color.value = 3
Показать все записигде существует красный
Я понимаю, что это действительно плохой дизайн, но я унаследовал это и должен выполнять запросы к данным.