P. 1
The Lost Art of the Self Join

The Lost Art of the Self Join

4.5

|Views: 2,059|Likes:
Published by Oleksiy Kovyrin

More info:

Published by: Oleksiy Kovyrin on Apr 18, 2008
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

02/05/2014

pdf

text

original

SELECT CONCAT(

d11.d, ' ', d12.d, ' ', d13.d, ' ', d14.d, ' ', d15.d, ' ', d16.d, ' ', CHAR(10),
d21.d, ' ', d22.d, ' ', d23.d, ' ', d24.d, ' ', d25.d, ' ', d26.d, ' ', CHAR(10),
d31.d, ' ', d32.d, ' ', d33.d, ' ', d34.d, ' ', d35.d, ' ', d36.d, ' ', CHAR(10),
d41.d, ' ', d42.d, ' ', d43.d, ' ', d44.d, ' ', d45.d, ' ', d46.d, ' ', CHAR(10),
d51.d, ' ', d52.d, ' ', d53.d, ' ', d54.d, ' ', d55.d, ' ', d56.d, ' ', CHAR(10),
d61.d, ' ', d62.d, ' ', d63.d, ' ', d64.d, ' ', d65.d, ' ', d66.d, ' ', CHAR(10)
) AS solution
FROM digits d11
INNER JOIN digits d12
ON COALESCE(d12.d = ( SELECT d FROM start WHERE i = 1 AND j = 2 ), 1)
AND d12.d != d11.d
INNER JOIN digits d13
ON COALESCE(d13.d = ( SELECT d FROM start WHERE i = 1 AND j = 3 ), 1)
AND d13.d != d11.d AND d13.d != d12.d
INNER JOIN digits d14
ON COALESCE(d14.d = ( SELECT d FROM start WHERE i = 1 AND j = 4 ), 1)
AND d14.d != d11.d AND d14.d != d12.d AND d14.d != d13.d
INNER JOIN digits d15
ON COALESCE(d15.d = ( SELECT d FROM start WHERE i = 1 AND j = 5 ), 1)
AND d15.d != d11.d AND d15.d != d12.d AND d15.d != d13.d AND d15.d != d14.d
INNER JOIN digits d16
ON COALESCE(d16.d = ( SELECT d FROM start WHERE i = 1 AND j = 6 ), 1)
AND d16.d != d11.d AND d16.d != d12.d AND d16.d != d13.d AND d16.d != d14.d AND d16.d != d15.d
INNER JOIN digits d21
ON COALESCE(d21.d = ( SELECT d FROM start WHERE i = 2 AND j = 1 ), 1)
AND d21.d != d11.d
INNER JOIN digits d22
ON COALESCE(d22.d = ( SELECT d FROM start WHERE i = 2 AND j = 2 ), 1)
AND d22.d != d21.d
AND d22.d != d12.d
AND d22.d != d11.d
INNER JOIN digits d23
ON COALESCE(d23.d = ( SELECT d FROM start WHERE i = 2 AND j = 3 ), 1)
AND d23.d != d21.d AND d23.d != d22.d
AND d23.d != d13.d
AND d23.d != d11.d AND d23.d != d12.d

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->