Re: [gnome-db] GdaSqlQuery: sub-queries
- From: Murray Cumming <murrayc murrayc com>
- To: Vivien Malerba <vmalerba gmail com>
- Cc: gnome-db-list <gnome-db-list gnome org>
- Subject: Re: [gnome-db] GdaSqlQuery: sub-queries
- Date: Mon, 17 May 2010 16:38:30 +0200
On Wed, 2010-05-12 at 18:36 +0200, Vivien Malerba wrote:
> On 12 May 2010 12:36, Vivien Malerba <vmalerba gmail com> wrote:
> > On 12 May 2010 12:25, Murray Cumming <murrayc murrayc com> wrote:
> >> In Glom I have a generic function like so:
> >> int count_rows_returned_by(const std::string& sql_query)
> >> {
> >> std::string query_count =
> >> "SELECT COUNT (*) FROM ("
> >> + sql_query
> >> + ") AS glomarbitraryalias";
> >> ...
> >> }
> >>
> >> So with GdaSqlBuilder, is there any way to use a sub-query as the
> >> target? gda_sql_builder_select_add_target_id() seems to be only for
> >> specifying tables as targets:
> >> http://library.gnome.org/devel/libgda/unstable/GdaSqlBuilder.html#gda-sql-builder-select-add-target-id
> >>
> >
>
> It's possible using gda_sql_builder_select_add_target_id() with a
> minor correction I've made,
> see http://git.gnome.org/browse/libgda/commit/?id=9b8778a08ffad208d8da159643b38d0f61482c6b
Thanks. Should it work like this?
GdaSqlBuilder* builder =
gda_sql_builder_new (GDA_SQL_STATEMENT_SELECT);
const guint target_id =
gda_sql_builder_add_sub_select(builder, 0,
inner_builder->get_sql_statement());
gda_sql_builder_select_add_target_id(builder,
target_id);
gda_sql_builder_add_function(builder, "COUNT",
gda_sql_builder_add_id(builder, "*"));
I'm getting these errors from that, though I haven't tried a simple C
test case yet:
"SELECT does not contain any expression"
--
murrayc murrayc com
www.murrayc.com
www.openismus.com
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]