[Dbix-class] trouble with using 'select' in a search clause
Matt S Trout
dbix-class at trout.me.uk
Thu May 18 14:31:26 CEST 2006
Toby Corkindale wrote:
> On Thu, May 18, 2006 at 01:11:46AM -0700, John Napiorkowski wrote:
>> To be honest I am sure part of my problem is ignorance
>> about the best way to use DBIx. So your suggestions
>> of any type are useful. I've been using SQL for quite
>> a long time and writing a statement like the one I
>> show below is a very normal way for me to think. My
>> instinct is to try and get all the data I want in a
>> single statement, since my training in SQL pushed me
>> to consider performance issue.
> I've entered the DBIx::Class arena from the same background as you..
> I've used to hand-crafting large SQL queries, with the emphasis being on
> performance, data normalisation, and avoiding long locks due to transaction
> I don't believe DBIx::Class will ever have the performance of pure hand-crafted
> SQL, when used in complex situations. However, that's like saying that C++
> won't have the performance of hand-written assembler - ie. It's true, but there
> isn't a huge amount in it, and no-one is going to write large programs in pure
> assembler, and you can always insert small pieces here and there if needs be
> DBIx::Class encourages you to think of your data as the conceptual related
> objects they really are.
... but if you can't persuade it to run something that's at least *almost*
equivalent to the pure hand-crafted SQL you would have done anyway, I want to
know what the difference is so I can hack it in as a supported feature.
DBIC puts a lot more emphasis on that than I think any other perl ORM does -
native GROUP BY and HAVING support being something I think is unique to us
currently, and I have every intention of getting subqueries, EXISTS and NOT
EXISTS clauses working soon.
Matt S Trout Offering custom development, consultancy and support
Technical Director contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd. mst (at) shadowcatsystems.co.uk for more information
+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +
More information about the Dbix-class