Say Mam tabeli jak takpostgresql własny dołączyć
id | device | cmd | value |
------+----------------+-------+---------
id = unique row ID
device = device identifier (mac address)
cmd = some arbitrary command
value = value of corresponding command
Chciałbym jakoś samo dołączyć na tej tabeli, aby chwycić konkretnych CMDS i odpowiadające im wartości dla konkretnego urządzenia.
Nie chcę po prostu SELECT cmd,value FROM table WHERE device='00:11:22:33:44:55';
Say wartości chcę odpowiadać getname
i getlocation
poleceń. Chciałbym mieć coś w rodzaju:
mac | name | location
--------------------+-----------+------------
00:11:22:33:44:55 | some name | somewhere
Moje sql fu to ładne spodnie. Próbowałem różnych kombinacji, takich jak SELECT a.value,b.value FROM table AS a INNER JOIN table AS b ON a.device=b.device
, ale nigdzie nie dochodzę.
Dzięki za pomoc.
Dzięki za to. Przypuszczam, że gdybym chciał cztery wartości zamiast dwóch, potrzebowałbym trzech JOIN-ów? – tbh1
Tak, ale może zechcesz ponownie rozważyć strukturę bazy danych, jeśli jest to ważne ;-) –
Inną możliwością jest użycie grupy i posortowanie jej na liście wyboru. –