Re: Solving sudoku using SQL - Mailing list pgsql-hackers

From Merlin Moncure
Subject Re: Solving sudoku using SQL
Date
Msg-id AANLkTik1QTT3LN2oxZeWhVwaJ2gOb84CBEiLVJ3jDh8y@mail.gmail.com
Whole thread Raw
In response to Solving sudoku using SQL  (Tatsuo Ishii <ishii@postgresql.org>)
Responses Re: Solving sudoku using SQL  (Dimitri Fontaine <dimitri@2ndQuadrant.fr>)
List pgsql-hackers
On Wed, Dec 8, 2010 at 8:57 AM, Tatsuo Ishii <ishii@postgresql.org> wrote:
> Hi,
>
> I found an interesting article which explains how to solve "sudoku" by
> using SQL(unfortunately written in Japanese):
> http://codezine.jp/article/detail/1629?p=2
>
> In the article example sudoku is:
> http://static.shoeisha.jp/cz/static/images/article/1629/problem4.gif
>
> To solve the example you create following table:
>
> CREATE TABLE nums (n INT NOT NULL PRIMARY KEY);
> INSERT INTO nums VALUES (1);
> INSERT INTO nums VALUES (2);
> INSERT INTO nums VALUES (3);
> INSERT INTO nums VALUES (4);
> INSERT INTO nums VALUES (5);
> INSERT INTO nums VALUES (6);
> INSERT INTO nums VALUES (7);
> INSERT INTO nums VALUES (8);
> INSERT INTO nums VALUES (9);
>
> Then execute the huge SELECT:
> http://codezine.jp/static/images/article/1629/html/sql.html
>
> In the page first one takes infinite time by PostgreSQL 9.0.1.  Next
> one can be executed very quickly because the join order is explicitely
> specified by cross join syntax. This seems to be a limitation of
> PostgreSQL optimizer and I would like it be removed. Comments?
>
> BTW according to the article, Oracle execute the first SELECT(the one
> PostgreSQL takes infinite time) in 10 seconds. It seems Oracle's
> optimizer is sperior in this regard.

benchmark what you've got against this (ported to postgres by marcin mank):
http://www.pastie.org/684163

merlin


pgsql-hackers by date:

Previous
From: Marti Raudsepp
Date:
Subject: Re: We really ought to do something about O_DIRECT and data=journalled on ext4
Next
From: Tom Lane
Date:
Subject: Re: We really ought to do something about O_DIRECT and data=journalled on ext4