louis gonzales escribió: > louis gonzales wrote: > > >2) Seeing as you have no idea - not attacking, stating fact - on the > >rationale behind the "insert statement-level" to create 1-to-1 table > >for each statement-level > >insert, I'd say your presumption is unfounded. This won't work anyway, because a FOR STATEMENT trigger doesn't have access to the row being inserted. Even if that worked, consider this case: insert into foo values ('one', 'row'), ('two', 'rows'); How do you know you need to create two tables and not just one? > > If you have some benchmark data, which support why/how to quantify, > > 50K records in a single table, all of which would have N number of > > associated records in another table, would out perform 50K records > > in a single table referencing dedicated 'small' tables, please do > > share. Indexes occupy less space in the single table case, and there will be 49999 less catalog entries and 49999 less files on disk. Sure, these are implementation details; you can ignore them if you want, but the performance difference is likely to be noticeable. I'll tell you something: the first question I made to these lists, around year 2000 IIRC, was around exactly the same issue you are proposing. A couple of guys suggested the same thing they're telling you now. I didn't listen and went ahead with this silly idea; and in time, I understood what they were all about. After much pain, I redesigned the stuff to use a single table to store all customers' data, instead of a small table for each customer. http://archives.postgresql.org/pgsql-general/2000-11/msg00094.php -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support