Re: Q on "Re: select is fast, update based on same where clause is slow "

Поиск
Список
Период
Сортировка
От Josh Berkus
Тема Re: Q on "Re: select is fast, update based on same where clause is slow "
Дата
Msg-id web-123693@davinci.ethosmedia.com
обсуждение исходный текст
Список pgsql-sql
Bladvin,

> I understand why did Jeff's original solution not work. I understand
> why yours do.
> 
> But could you please explain me how the 74000^2 can be calculated
> for this original query?:

Sure.  In Jeff's original query, the updated instance of the table
(sessions2) and the referenced instance (s) are seperate, without any
JOIN or WHERE conditions to link them.  Under these conditions, SQL
engines do a CROSS JOIN, where every single one of the rows in the first
table is matched against every single one of the rows in the second
table.  This gives you a result set of the number of rows in sessions2 *
the number of rows in s.  74,000^2  Get it?

Example:

TableA:
1    A
2    B

Table B
7    H
8    G

SELECT * FROM TableA, TableB
1    A    7    H
1    A    8    G
2    B    7    H
2    B    8    G

-Josh

-Josh


______AGLIO DATABASE SOLUTIONS___________________________                                      Josh Berkus Complete
informationtechnology      josh@agliodbs.com  and data management solutions       (415) 565-7293 for law firms, small
businesses       fax 621-2533   and non-profit organizations.      San Francisco
 


В списке pgsql-sql по дате отправления:

Предыдущее
От: "Jeff Barrett"
Дата:
Сообщение: Re: select is fast, update based on same where clause is slow
Следующее
От: "postgresql"
Дата:
Сообщение: more information on JOINs