"""Functions for accessing the database relating to datasets.""" import MySQLdb as mdb from MySQLdb.cursors import DictCursor def geno_dataset_by_species_and_population( conn: mdb.Connection, speciesid: int, populationid: int) -> tuple[dict, ...]: """Retrieve all genotypes datasets by species and population""" with conn.cursor(cursorclass=DictCursor) as cursor: cursor.execute( "SELECT gf.* FROM InbredSet AS iset INNER JOIN GenoFreeze AS gf " "ON iset.InbredSetId=gf.InbredSetId " "WHERE iset.SpeciesId=%(sid)s AND iset.InbredSetId=%(pid)s", {"sid": speciesid, "pid": populationid}) return tuple(dict(row) for row in cursor.fetchall())