Skip to content

Instantly share code, notes, and snippets.

@drdrsh
Created December 8, 2015 02:51
Show Gist options
  • Save drdrsh/3aa82e2a91e37c27f32a to your computer and use it in GitHub Desktop.
Save drdrsh/3aa82e2a91e37c27f32a to your computer and use it in GitHub Desktop.
A Query to Ensambl Database the returns the 5utr and 3utr lengths given a transcript_id
SELECT
1 + tr.seq_start + IFNULL((SELECT SUM(ABS(ex_1.seq_region_end - ex_1.seq_region_start)) FROM exon ex_1 WHERE ex_1.exon_id IN (SELECT et_1.exon_id FROM exon_transcript et_1 WHERE et_1.rank < et_start.rank AND et_1.transcript_id=tr.transcript_id)), 0) as utr5_length,
((SELECT ex_3.seq_region_end - ex_3.seq_region_start FROM exon ex_3 WHERE ex_3.exon_id = tr.end_exon_id) - tr.seq_end - 1) + IFNULL((SELECT SUM(ABS(ex_2.seq_region_end - ex_2.seq_region_start)) FROM exon ex_2 WHERE ex_2.exon_id IN (SELECT et_2.exon_id FROM exon_transcript et_2 WHERE et_2.rank > et_end.rank AND et_2.transcript_id=tr.transcript_id)), 0) as utr3_length
FROM
homo_sapiens_core_82_38.translation tr
LEFT JOIN
homo_sapiens_core_82_38.exon_transcript et_start
ON
et_start.exon_id = tr.start_exon_id
LEFT JOIN
homo_sapiens_core_82_38.exon_transcript et_end
ON
et_end.exon_id = tr.end_exon_id
WHERE
tr.transcript_id = 11058826;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment