Hmm, I thought there was a fetchMap(Field, Table) method but there isn't.
In that case, you could do:

DSL.using(configuration)
   .select(...)
   .from(...)
   .fetchMap(MY_TABLE.KEY_FIELD, r -> r.into(PERSON));

This will be using the Record.into(Table) method:
https://www.jooq.org/javadoc/latest/org/jooq/Record.html#into-org.jooq.Table-

Hope this helps,
Lukas

2017-03-28 15:28 GMT+02:00 Rob Sargent <robjsarg...@gmail.com>:

> Map<String,PersonRecord> is a different matter I think.
>
> On Mar 27, 2017, at 9:25 PM, Samir Faci <sa...@esamir.com> wrote:
>
> fetchMap:
>
> Map<Long, String> userMapping =  complexQuery.fetchMap(schema.table.fieldname,
> schema.table.fieldname2);
>
> I've used the exact same pattern for fetchMap irrelevant of the complexity
> of the SQL and it works fine for me.  I do find repeating the
> field names a bit repetitive but it does work.
>
> If you're on Java 8, you have access to the .fetch().stream() pattern and
> you can simply use the standard Java 8 pattern to conver it to a map if
> you'd like.
>
> Actually, I take it back.. if you're on Jooq 3.1 I don't think you have
> that feature.  I can't remember what version I started with but I don't
> think I was ever on 3.1 might be a legacy issue?
>
> --
> Samir Faci
>
>
>
>
> On Mon, Mar 27, 2017 at 4:41 PM, Rob Sargent <robjsarg...@gmail.com>
> wrote:
>
>> Are there any actual examples of RecordMapper working with fetchMap() on
>> results of joins?
>> I can map a direct select to a string (name field), but not for a join.
>> I've wondered through the code for DefaultRecordMapper, Record and
>> RecordType but still haven't managed to get a usable mapper the will
>> fetchMap() my select/join results to a string (the name field of the record)
>>
>> On Monday, July 22, 2013 at 3:41:44 AM UTC-6, Lukas Eder wrote:
>>>
>>> Hi Ryan,
>>>
>>> Unlike most JPA-based ORMs, jOOQ cleanly separates querying from
>>> mapping. There is no implicit knowledge about relations between your
>>> document and annotation tables, unless you explicitly join the two tables
>>> in your SQL statement. Once the result is fetched, you have lots of means
>>> of mapping the flat result set onto your custom domain model (i.e. your
>>> existing POJOs). jOOQ supports a default mapping algorithm that is
>>> described here:
>>> http://www.jooq.org/javadoc/latest/org/jooq/impl/DefaultReco
>>> rdMapper.html
>>>
>>> Since jOOQ 3.1, you can globally override the DefaultRecordMapper and
>>> inject your own mapping strategies, using tools like
>>> - http://modelmapper.org
>>> - https://code.google.com/p/orika
>>> - Your own implementation of jOOQ's RecordMapper
>>>
>>> Some documentation:
>>> http://www.jooq.org/doc/3.1/manual/sql-execution/fetching/recordmapper
>>> http://www.jooq.org/doc/3.1/manual/sql-execution/fetching/pojos
>>> http://www.jooq.org/doc/3.1/manual/sql-execution/fetching/po
>>> jos-with-recordmapper-provider
>>>
>>> Hope this helps
>>> Lukas
>>>
>>>
>>> 2013/7/19 Ryan Cornia <ryanc...@gmail.com>
>>>
>>>> I have an application with existing POJO's (and many hand coded SQL
>>>> statements) I would like to try JOOQ on.
>>>>
>>>> I can't find any examples of how to do this? Do I need to configure
>>>> JOOQ programmatically so it knows, for instance, I have a Document table
>>>> and Annotation table, and how they are related? Where would I find an
>>>> example of that?
>>>>
>>>> Or is code generation needed to get full feature type checking queries?
>>>> Right now the data is mostly read only, so I am looking for the most
>>>> maintainable way to do queries.
>>>>
>>>> Thanks,
>>>> Ryan
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "jOOQ User Group" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to jooq-user+...@googlegroups.com.
>>>> For more options, visit https://groups.google.com/groups/opt_out.
>>>>
>>>>
>>>>
>>>
>>> --
>> You received this message because you are subscribed to the Google Groups
>> "jOOQ User Group" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to jooq-user+unsubscr...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
>
> --
> Thank you
> Samir Faci
> https://keybase.io/csgeek
>
> --
> You received this message because you are subscribed to the Google Groups
> "jOOQ User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jooq-user+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google Groups
> "jOOQ User Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to jooq-user+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "jOOQ 
User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jooq-user+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to