sql >> Database >  >> RDS >> Mysql

tuple of tuple of dict uit mysql-database

Een mooie oplossing zou zijn om ze in een woordenboek op te slaan:

>>> t = ({"a":2}, {"a":2}, {"a":3})
>>> import collections
>>> d = collections.defaultdict(list)
>>> for i in t:
...     d[i['a']].append(i)
...

Dit is natuurlijk niet wat je wilt, maar dit is beter dan de lijst met lijsten in een lus rechtstreeks in termen van snelheid te maken, ook een woordenboek lijkt beter geschikt voor dit soort gegevens. Dit kan ook eenvoudig worden omgezet naar wat je maar wilt:

>>> [k for c,k in d.items()]
[[{'a': 2}, {'a': 2}], [{'a': 3}]]

Als de snelheid kritiek is, kunt u de db-resultaten sorteren op datum, in welk geval u een beter algoritme kunt krijgen.




  1. Voeg binair groot object (BLOB) in PostgreSQL in met libpq vanaf een externe machine

  2. Welke MySQL-collation vergelijkt b.v. é en e als gelijk?

  3. ORA-00942:tabel of weergave bestaat niet - Oracle

  4. door komma's gescheiden veld om te vergelijken in mysql