-
-
15 Apr 2011 19:35:57 UTC
- Distribution: BioPerl-DB
- Source (raw)
- Browse (raw)
- Changes
- How to Contribute
- Issues
- Testers (1 / 74 / 1)
- Kwalitee
Bus factor: 2- % Coverage
- License: perl_5
- Perl: v5.6.1
- Activity
24 month- Tools
- Download (481.25KB)
- MetaCPAN Explorer
- Permissions
- Subscribe to distribution
- Permalinks
- This version
- Latest version
and 1 contributors-
BioPerl Team
- Dependencies
- Bio::Root::Version
- DBI
- and possibly others
- Reverse dependencies
- CPAN Testers List
- Dependency graph
NAME
Bio::DB::Query::AbstractQuery - Abstract Query class
SYNOPSIS
# Don\'t use this class directly; use one of the subclasses (eg # SqlQuery, BioQuery) $q = $queryclass->new; $q->datacollections(["table1 t1", "table2 t2"]); $q->selectelts(["t1.colA", "t2.colB"]); $q->where("or", "colA=x", "colB=y"); $q->orderelts(["t1.colA", "t2.colB"]);
DESCRIPTION
Core methods for representing some kind of query - eg a query expressed in an human type language, an SQL query, an object oriented query.
Abstracted attribute names have been used; eg a query is assumed to be over some kind of collection of data. the query is performed over a subset of this data, a set of datacollections. These datacollections are equivalent to tables in SQL and object adaptors when forming an OO query.
The where clause / constraints is represented by the QueryConstraint composite object
CONTACT
Chris Mungall, cmungall@fruitfly.org
APPENDIX
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
datacollections
Usage: $query->datacollections([$t1,$t2]); # setting OR return $query->datacollections(); # getting
array reference of strings representing datacollections (eg tables, objects)
add_datacollection
Usage: $query->add_datacollection($t1, $t2, $t3);
adds datacollections; removes duplicates
where
Usage: $query->where("and", "att1 = val1", "att2=val2"); # setting OR $query->where("att1 = val1"); # setting OR $query->where({att1=>$val1, att2=>$val2}); # setting OR $query->where(["OR", ["AND", "x=1", "y=2", "z like blah*"], ["AND", "x=5", "y=7", "z like wow*"]]); OR $qc = $query->where(); # getting of type Bio::DB::Query::QueryConstraint
this method is liberal in what it accepts.
see the new() method of Bio::DB::Query::QueryConstraint
it will turn hashes into an ANDed query constraint composite, with each component being a name=value pair. it will turn arrays into an ANDed constraint composite, breaking up each element around the = symbol. if the first element of the array is a valid composite operand (e.g. "or") it will combine the array elements using this.
Or you can just feed it a Bio::DB::Query::QueryConstraint object
selectelts
Usage: $query->selectelts([$col1,$col2,$col3]); # setting OR $eltsref = $query->selectelts(); # getting
array reference of string represnting attributes/elements to be selected
orderelts
Usage: $query->orderelts(\@elts); # setting OR return $query->orderelts(); # getting
groupelts
Usage: $query->groupelts(\@elts); # setting OR return $query->groupelts(); # getting
querytype
Usage: $query->querytype($val); # setting OR return $query->querytype(); # getting
one of : select, select distinct, insert, update, delete
ignored for now...
Module Install Instructions
To install Bio::BioEntry, copy and paste the appropriate command in to your terminal.
cpanm Bio::BioEntry
perl -MCPAN -e shell install Bio::BioEntry
For more information on module installation, please visit the detailed CPAN module installation guide.