Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitec8f0e8

Browse files
committed
Add code to show join rule (for outer and IN joins) in join type name.
1 parentc5ba16a commitec8f0e8

File tree

1 file changed

+64
-4
lines changed

1 file changed

+64
-4
lines changed

‎src/backend/commands/explain.c

Lines changed: 64 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
* Portions Copyright (c) 1994-5, Regents of the University of California
88
*
99
* IDENTIFICATION
10-
* $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.102 2003/02/0906:56:26 tgl Exp $
10+
* $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.103 2003/02/10 17:06:23 tgl Exp $
1111
*
1212
*-------------------------------------------------------------------------
1313
*/
@@ -308,13 +308,73 @@ explain_outNode(StringInfo str,
308308
pname="Append";
309309
break;
310310
caseT_NestLoop:
311-
pname="Nested Loop";
311+
switch (((NestLoop*)plan)->join.jointype)
312+
{
313+
caseJOIN_INNER:
314+
pname="Nested Loop";
315+
break;
316+
caseJOIN_LEFT:
317+
pname="Nested Loop Left Join";
318+
break;
319+
caseJOIN_FULL:
320+
pname="Nested Loop Full Join";
321+
break;
322+
caseJOIN_RIGHT:
323+
pname="Nested Loop Right Join";
324+
break;
325+
caseJOIN_IN:
326+
pname="Nested Loop IN Join";
327+
break;
328+
default:
329+
pname="Nested Loop ??? Join";
330+
break;
331+
}
312332
break;
313333
caseT_MergeJoin:
314-
pname="Merge Join";
334+
switch (((MergeJoin*)plan)->join.jointype)
335+
{
336+
caseJOIN_INNER:
337+
pname="Merge Join";
338+
break;
339+
caseJOIN_LEFT:
340+
pname="Merge Left Join";
341+
break;
342+
caseJOIN_FULL:
343+
pname="Merge Full Join";
344+
break;
345+
caseJOIN_RIGHT:
346+
pname="Merge Right Join";
347+
break;
348+
caseJOIN_IN:
349+
pname="Merge IN Join";
350+
break;
351+
default:
352+
pname="Merge ??? Join";
353+
break;
354+
}
315355
break;
316356
caseT_HashJoin:
317-
pname="Hash Join";
357+
switch (((HashJoin*)plan)->join.jointype)
358+
{
359+
caseJOIN_INNER:
360+
pname="Hash Join";
361+
break;
362+
caseJOIN_LEFT:
363+
pname="Hash Left Join";
364+
break;
365+
caseJOIN_FULL:
366+
pname="Hash Full Join";
367+
break;
368+
caseJOIN_RIGHT:
369+
pname="Hash Right Join";
370+
break;
371+
caseJOIN_IN:
372+
pname="Hash IN Join";
373+
break;
374+
default:
375+
pname="Hash ??? Join";
376+
break;
377+
}
318378
break;
319379
caseT_SeqScan:
320380
pname="Seq Scan";

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp