hello,

I have read the source code of postgres.c. Two strang things I can't understand.
Souce code of Postgres.c:
..
Foreach(parsetree_list的元素parsetree){ //In what situation here will be many parsetrees？
…
(List *)querytree_list = pg_analyze_and_rewrite(parsetree);
	foreach(querytree_list中的每个querytree){ //In what situation here will be many querytrees？

Who can tell me the reason?
Thank you very much

Jinqiang Han


Wed, 26 Mar 2003 17:19:38 +0800
"Jinqiang Han" <postgresql@db.pku.edu.cn>
inquiry
Jinqiang Han wrote:
> hello,
> 
> I have read the source code of postgres.c. Two strang things I can't understand.
> Souce code of Postgres.c:
> ..
> Foreach(parsetree_list��Ԫ��parsetree){ //In what situation here will be many parsetrees��
> ��

You can send multiple queries in a single string, "SELECT;SELECT".

> (List *)querytree_list = pg_analyze_and_rewrite(parsetree);
> 	foreach(querytree_list�е�ÿ��querytree){ //In what situation here will be many querytrees��

A RULE may have additional queries to fire.

> 
> Who can tell me the reason?
> Thank you very much
> 
> Jinqiang Han
> 
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
> 
> http://www.postgresql.org/docs/faqs/FAQ.html
> 

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073


Wed, 26 Mar 2003 10:20:26 -0500 (EST)
Bruce Momjian <pgman@candle.pha.pa.us>
Re: inquiry