Ok, habe ich ein Problem ein wenig kompliziert explizieren und zu verstehen:SQL, mehr Informationen für Spalten hinzufügen
ich eine PostgreSQL-Datenbank haben, die Tabellen mit Spalten enthält, und ich möchte einige Informationen über jede Spalte hinzufügen , so mache ich eine "Service-Tabelle", die wie folgt aussehen:
+---------------+-----------+--------------------+----------+----------+
| ColumnName | ucd | utype | datatype | table |
+---------------+-----------+--------------------+----------+----------+
| ident | ucd:ident | utype:EntityId | char | Entity |
| label | ucd:label | utype:EntityLabel | char | Entity |
| level | ucd:level | utype:EntityLevel | int | Entity |
| idAct | ucd:Acti | utype:ActivityId | char | Activity |
| label | ucd:label | utype:ActivityLb | char | Activity |
| ... | ... | ... | ... | ... |
+---------------+-----------+--------------------+----------+----------+
Die uType und UCD Spalten eindeutig sind
Mein Problem ist:
Ich mache eine Anfrage auf meiner db.
Exemple: select * from Einheit:
Ergebnis:
+-------+---------+-------+
| ident | label | level |
+-------+---------+-------+
| 1 | Entity1 | 1 |
| 2 | Entity2 | 2 |
| 3 | Entity3 | 2 |
+-------+---------+-------+
ich auch alle Informationen über meine Spalten wiederherstellen möchten in meiner Anfrage meine Service-Tabelle Whit:
Soetwas :
Ident: UCD = UCD: Ident, UType = UType: EnetityId, Datentyp = Char
Label: UCD = UCD: label, uType = uType: EntityLabel, datatype = char
Level: UCD = UCD: Ebene, uType = uType: EntityLevel, datatype = int
ich weiß, wie alle Namen der Spalten des Ergebnisses meiner Anfrage haben, aber ich weiß nicht, wie über sie alle Informationen haben:
ich habe das:
Select * from servicetable
where columnName = 'queryColumnName'
columnName ist jedoch in der Servicetabelle nicht eindeutig, daher kann es mehr als eine Zeile zurückgeben.
Ich hoffe, Sie haben mein Problem verstanden. Danke
Entschuldigung - Ich habe Ihr Problem nicht verstanden ... Vielleicht ein langer Tag ... –
Sie möchten Informationen aus Service-Tabelle in derselben Abfrage mit "Select * from entity" wiederherstellen? Wenn ja, können Sie bitte zeigen, wie Ergebnismenge aussehen sollte? –
Mein Python-Programm nimmt eine Abfrage im Argument Beispiel "Select * from entity". Mit einem Cursor kann ich den Spaltennamen des Ergebnisses der Abfrage wiederherstellen. In diesem Fall enthält der Cursor Spaltennamen ('ident', 'label', 'level'). Also möchte ich so etwas wie "Select * from services wo ColumName =" ident "ausführen.Aber das Problem ist, sie sind mehr als ein Spaltenname "ident" in meiner DB. –