<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: SQL fejtörő</title>
	<atom:link href="http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/</link>
	<description>Az ember kivételével minden állat tudja, hogy a legfontosabb dolgunk az életben: élvezni azt.</description>
	<pubDate>Fri, 18 May 2012 12:36:55 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
		<item>
		<title>By: kpocza</title>
		<link>http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57539</link>
		<dc:creator>kpocza</dc:creator>
		<pubDate>Sat, 26 Jan 2008 10:58:39 +0000</pubDate>
		<guid isPermaLink="false">http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57539</guid>
		<description>SELECT DISTINCT 
  SUM(v.amt) as amt
FROM 
(
  SELECT 
    nt.number 
  FROM
  (
    SELECT 
      row_number() OVER (ORDER BY s1.name) as number 
    FROM
      sysobjects s1 
    CROSS JOIN sysobjects s2) nt
    WHERE nt.number &#60; power(2, (select max(vid)+1 from Vouchers))
  ) n
INNER JOIN Vouchers v on (n.number &#38; convert(int, (power(2, v.vid))) &#62; 0)
GROUP BY n.number

Na pár html karaktert megevett az előző komment. Próbálom másképp küldeni.</description>
		<content:encoded><![CDATA[<p>SELECT DISTINCT<br />
  SUM(v.amt) as amt<br />
FROM<br />
(<br />
  SELECT<br />
    nt.number<br />
  FROM<br />
  (<br />
    SELECT<br />
      row_number() OVER (ORDER BY s1.name) as number<br />
    FROM<br />
      sysobjects s1<br />
    CROSS JOIN sysobjects s2) nt<br />
    WHERE nt.number &lt; power(2, (select max(vid)+1 from Vouchers))<br />
  ) n<br />
INNER JOIN Vouchers v on (n.number &amp; convert(int, (power(2, v.vid))) &gt; 0)<br />
GROUP BY n.number</p>
<p>Na pár html karaktert megevett az előző komment. Próbálom másképp küldeni.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kpocza</title>
		<link>http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57538</link>
		<dc:creator>kpocza</dc:creator>
		<pubDate>Sat, 26 Jan 2008 10:55:17 +0000</pubDate>
		<guid isPermaLink="false">http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57538</guid>
		<description>SELECT DISTINCT 
  SUM(v.amt) as amt
FROM 
(
  SELECT 
    nt.number 
  FROM
  (
    SELECT 
      row_number() OVER (ORDER BY s1.name) as number 
    FROM
      sysobjects s1 
    CROSS JOIN sysobjects s2) nt
    WHERE nt.number  0)
GROUP BY n.number

Magyarul egy szám bitindexeinek tekintem a vid értékeket, és ezeket minden kominációban ki-be kapcsolgatom, amit úgy érek el, hogy egész számogat generálok, és a bitekre nézem, hogy melyik mikor van bekapcsolva a különböző egész számok bináris ábrázolása esetében. Minden esetben a bekapcsolt bitekhez tartozó értékeket kell összeadni.

Mit mondjak, eléggé gáz módon lehet egész számokat generálni. A CTE és a rekurzív CTE-s megoldás szintés fos.

Kaz megoldása sztem ötletesebb.</description>
		<content:encoded><![CDATA[<p>SELECT DISTINCT<br />
  SUM(v.amt) as amt<br />
FROM<br />
(<br />
  SELECT<br />
    nt.number<br />
  FROM<br />
  (<br />
    SELECT<br />
      row_number() OVER (ORDER BY s1.name) as number<br />
    FROM<br />
      sysobjects s1<br />
    CROSS JOIN sysobjects s2) nt<br />
    WHERE nt.number  0)<br />
GROUP BY n.number</p>
<p>Magyarul egy szám bitindexeinek tekintem a vid értékeket, és ezeket minden kominációban ki-be kapcsolgatom, amit úgy érek el, hogy egész számogat generálok, és a bitekre nézem, hogy melyik mikor van bekapcsolva a különböző egész számok bináris ábrázolása esetében. Minden esetben a bekapcsolt bitekhez tartozó értékeket kell összeadni.</p>
<p>Mit mondjak, eléggé gáz módon lehet egész számokat generálni. A CTE és a rekurzív CTE-s megoldás szintés fos.</p>
<p>Kaz megoldása sztem ötletesebb.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Soczó Zsolt</title>
		<link>http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57490</link>
		<dc:creator>Soczó Zsolt</dc:creator>
		<pubDate>Fri, 25 Jan 2008 15:28:06 +0000</pubDate>
		<guid isPermaLink="false">http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57490</guid>
		<description>Kaz: ügyes, tényleg, kezdek szégyenkezni a saját megoldásommal. :)</description>
		<content:encoded><![CDATA[<p>Kaz: ügyes, tényleg, kezdek szégyenkezni a saját megoldásommal. :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kaz</title>
		<link>http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57489</link>
		<dc:creator>kaz</dc:creator>
		<pubDate>Fri, 25 Jan 2008 15:20:56 +0000</pubDate>
		<guid isPermaLink="false">http://soci.hu/blog/index.php/2008/01/25/sql-fejtoro-2/#comment-57489</guid>
		<description>with q(v, vid)
as
(
select amt, vid
from Vouchers v1
union all
select 
  v+amt, v1.vid
from q, Vouchers v1
where
  q.vid&#60;v1.vid
)
select distinct v from q order by 1</description>
		<content:encoded><![CDATA[<p>with q(v, vid)<br />
as<br />
(<br />
select amt, vid<br />
from Vouchers v1<br />
union all<br />
select<br />
  v+amt, v1.vid<br />
from q, Vouchers v1<br />
where<br />
  q.vid&lt;v1.vid<br />
)<br />
select distinct v from q order by 1</p>
]]></content:encoded>
	</item>
</channel>
</rss>

