aboutsummaryrefslogtreecommitdiff
path: root/uploader/genotypes/models.py
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2024-09-19 13:30:20 -0500
committerFrederick Muriuki Muriithi2024-09-19 13:30:20 -0500
commitf909cd13cadab9bd0bb6e816b6c6f492ab18f28a (patch)
tree612e676d95ac2ee4a0a4c765338ed73c30b674ad /uploader/genotypes/models.py
parentfc99a1700007e8a1b71e07455c57f8692aad2a59 (diff)
downloadgn-uploader-f909cd13cadab9bd0bb6e816b6c6f492ab18f28a.tar.gz
List genotype datasets
Diffstat (limited to 'uploader/genotypes/models.py')
-rw-r--r--uploader/genotypes/models.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/uploader/genotypes/models.py b/uploader/genotypes/models.py
index 53c5fb8..642caa6 100644
--- a/uploader/genotypes/models.py
+++ b/uploader/genotypes/models.py
@@ -39,3 +39,19 @@ def genotype_markers(
cursor.execute(_query, (species_id,))
debug_query(cursor)
return tuple(dict(row) for row in cursor.fetchall())
+
+
+def genotype_datasets(
+ conn: mdb.Connection,
+ species_id: int,
+ population_id: int
+) -> tuple[dict, ...]:
+ """Retrieve genotype datasets from the database."""
+ with conn.cursor(cursorclass=DictCursor) as cursor:
+ cursor.execute(
+ "SELECT gf.* FROM Species AS s INNER JOIN InbredSet AS iset "
+ "ON s.Id=iset.SpeciesId INNER JOIN GenoFreeze AS gf "
+ "ON iset.Id=gf.InbredSetId "
+ "WHERE s.Id=%s AND iset.Id=%s",
+ (species_id, population_id))
+ return tuple(dict(row) for row in cursor.fetchall())