Hi Rochak, Yes, you are right. dm table has all its main table's corresponding rows even some of the rows contain all NULL values. With this we can make sure with using left join, rows in main table can still be presented in the result even when there is no original matching row in dm. For better performance, we avoid using left join.
>In our mart, we are seeing that if attributes are selected from >transcripts__main and from different dm tables, only those transcript that >have rows in ALL selected dm tables are displayed onthe results page. If this is not the desired behavior, please insert corresponding rows in dm table with all NULL values. BTW, if you use MartBuilder to transform source schema into mart schema, all of these are handled automatically. Hope this helps. Best regards, Junjun ________________________________ From: [email protected] [mailto:[email protected]] On Behalf Of Rochak Neupane Sent: Monday, November 02, 2009 7:45 PM To: [email protected] Subject: [mart-dev] __main table to __dm table relation Does biomart require that all rows from a main table have a corresponding row in a dm table (either with real values or all NULL values) for proper function? For example, if we are storing PFAM domains for transcripts, where transcripts are stored in say transcripts__main and PFAM domains in pfam__dm, do transcripts that do NOT have any PFAM domain need to have a row in pfam__dm with all columns set to NULL? In our mart, we are seeing that if attributes are selected from transcripts__main and from different dm tables, only those transcript that have rows in ALL selected dm tables are displayed onthe results page. Thanks, rochak
