【发布时间】:2019-10-09 09:26:40
【问题描述】:
我在 Animals 和它们的属性之间有一个多对一的关系。因为不同的动物具有不同的属性,所以我希望能够选择所有动物,其属性名称作为列标题,并且该动物不具有该属性的 NULL 值。
就这样……
TABLE_ANIMALS
ID | ANIMAL | DATE | MORE COLS....
1 | CAT | 2012-01-10 | ....
2 | DOG | 2012-01-10 | ....
3 | FROG | 2012-01-10 | ....
...
TABLE_ATTRIBUTES
ID | ANIMAL_ID | ATTRIBUE_NAME | ATTRIBUTE_VALUE
1 | 1 | noise | meow
2 | 1 | legs | 4
3 | 1 | has_fur | TRUE
4 | 2 | noise | woof
5 | 2 | legs | 4
6 | 3 | noise | croak
7 | 3 | legs | 2
8 | 3 | has_fur | FALSE
...
QUERY RESULT
ID | ANIMAL | NOISE | LEGS | HAS_FUR
1 | CAT | meow | 4 | TRUE
2 | DOG | woof | 4 | NULL
3 | FROG | croak | 2 | FALSE
我该怎么做?重申一下,重要的是所有列都存在,即使一个动物没有该属性,例如本例中的“DOG”和“HAS_FUR”。如果它没有属性,它应该只是空。
【问题讨论】: