Ich habe eine PostgreSQL-Tabelle, die Attribute über verschiedene physikalische Objekte speichert. Es hat die folgenden Felder:Erstellen Sie eine breite Sicht auf eine Datenbanktabelle in PostgreSQL
object_name
attr_name (string e.g. attr_1, attr_2 etc.)
attr_value (number)
date_modified (date)
priority (integer)
Es können viele verschiedene Werte für den gleichen attr_name
sein, die zu verschiedenen Zeitpunkten und mit unterschiedlichen Prioritätsstufe hinzugefügt werden (die die Genauigkeit der Quelle), so brauche ich diese Struktur für die Rückverfolgbarkeit später.
Ich möchte eine Ansicht dieser Tabelle erstellen, so dass ich es auf eine effiziente Weise für mehrere (~ 100) Attribute z.
SELECT * FROM View1 WHERE attr_1 = 5 and attr_2 > 3 etc.
Also, um dies zu tun, ich glaube, ich brauche eine Ansicht mit Feldern wie:
object_name
attr_1
attr_2
etc.
Jedes Attribut attr_x
die höchste Priorität Version des Attributs aus der ursprünglichen Tabelle enthalten soll. Weiß jemand, wie man das macht? Ich kenne nur sehr grundlegendes SQL, also weiß ich nicht einmal, wie das heißt oder ob es möglich ist. Hat jemand das schon mal in irgendeiner SQL-Datenbank gemacht? Ich möchte vermeiden, wenn möglich zwei getrennte Tabellen zu haben. Glücklich, jede andere Lösung zu akzeptieren, die sowohl die Rückverfolgbarkeit als auch die schnellen Abfrageanforderungen erfüllt.
Beispieldaten und gewünschte Ergebnisse würden einen guten Job erklären, was Sie brauchen –