<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>SQL für folgendes Problem</title>
    <link>http://forum.geizhals.at/feed.jsp?id=866370</link>
    <description>Geizhals-Forum</description>
    <item>
      <title>Re: SQL für folgendes Problem</title>
      <link>http://forum.geizhals.at/t866370,7476082.html#7476082</link>
      <description>Das ist nichts für SQL &#x1f60a; &lt;br/&gt;</description>
      <pubDate>Tue, 26 May 2015 13:55:13 GMT</pubDate>
      <guid>http://forum.geizhals.at/t866370,7476082.html#7476082</guid>
      <dc:creator>Somnatic</dc:creator>
      <dc:date>2015-05-26T13:55:13Z</dc:date>
    </item>
    <item>
      <title>SQL für folgendes Problem</title>
      <link>http://forum.geizhals.at/t866370,7475880.html#7475880</link>
      <description>Hallo,&lt;br&gt;Ich habe folgende Ausgangslage:&lt;br&gt;&lt;br&gt;G ... Gewichtung&lt;br&gt;Anz ... Anzahl&lt;br&gt;&lt;br&gt;Einige Zeilen mit der Kombination:&lt;br&gt;&lt;br&gt;G1 | Anz1&lt;br&gt;G2 | Anz2&lt;br&gt;...&lt;br&gt;Gn | Anzn&lt;br&gt;&lt;br&gt;Jetzt muss man einen Gesamtbetrag B auf die einzelnen Zeilen Aufteilen wobei die Gewichtung der Zeilen eine Rolle spielt! &lt;br&gt;&lt;br&gt;Bsp.: B =10000&lt;br&gt;1&amp;nbsp;&amp;nbsp;| 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---&gt; 4545,45&lt;br&gt;,6 | 20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---&gt; 5454.55&lt;br&gt;&lt;br&gt;Das könnte ich einfach in einem Update machen:&lt;br&gt;update ...&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set Betrag = Anz * G * Gesamtbetrag /(select sum(G*Anz) from ....);&lt;br&gt;&lt;br&gt;&lt;br&gt;So nun zum Problem. Jetzt soll es für jeden Satz zusätzlich einen Höchstbetrag geben, der nicht überschritten werden soll.&lt;br&gt;Bsp. von oben: &lt;br&gt;0,6 | 20 | 5300 &lt;br&gt;Der Höchstbetrag bei der Gewichtung von 0,6 soll bei 5300 liegen, dh. 154,55 sollen zur anderen Zeile hinzukommen.&lt;br&gt;Wenn der Gesamtbetrag über der Summe der Höchstbeträge liegt, soll nicht alles zugewiesen werden.&lt;br&gt;&lt;br&gt;Ich bin schon etwas Betriebsblind, aber kann man dafür ein Update-Statement bauen, mit dem ich diese Werte jeweils ausrechne für beliebig viele Sätze, ober muss ich eine Schleife laufen lassen?&lt;br&gt;&lt;br/&gt;</description>
      <pubDate>Tue, 26 May 2015 08:46:29 GMT</pubDate>
      <guid>http://forum.geizhals.at/t866370,7475880.html#7475880</guid>
      <dc:creator>Infosauger</dc:creator>
      <dc:date>2015-05-26T08:46:29Z</dc:date>
    </item>
    <item>
      <title>SQL für folgendes Problem</title>
      <link>http://forum.geizhals.at/t866370,7475884.html#7475884</link>
      <description>Hallo,&lt;br&gt;Ich habe folgende Ausgangslage:&lt;br&gt;&lt;br&gt;G ... Gewichtung&lt;br&gt;Anz ... Anzahl&lt;br&gt;&lt;br&gt;Einige Zeilen mit der Kombination:&lt;br&gt;&lt;br&gt;G1 | Anz1&lt;br&gt;G2 | Anz2&lt;br&gt;...&lt;br&gt;Gn | Anzn&lt;br&gt;&lt;br&gt;Jetzt muss man einen Gesamtbetrag B auf die einzelnen Zeilen Aufteilen wobei die Gewichtung der Zeilen eine Rolle spielt! &lt;br&gt;&lt;br&gt;Bsp.: B =10000&lt;br&gt;1&amp;nbsp;&amp;nbsp;| 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---&gt; 4545,45&lt;br&gt;,6 | 20&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;---&gt; 5454.55&lt;br&gt;&lt;br&gt;Das könnte ich einfach in einem Update machen:&lt;br&gt;update ...&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;set Betrag = Anz * G * Gesamtbetrag /(select sum(G*Anz) from ....);&lt;br&gt;&lt;br&gt;&lt;br&gt;So nun zum Problem. Jetzt soll es für jeden Satz zusätzlich einen Höchstbetrag geben, der nicht überschritten werden soll.&lt;br&gt;Bsp. von oben: &lt;br&gt;0,6 | 20 | 5300 &lt;br&gt;Der Höchstbetrag bei der Gewichtung von 0,6 soll bei 5300 liegen, dh. 154,55 sollen zur anderen Zeile hinzukommen. Bei mehr als 2 Zeilen soll der Betrag dann anteilsmäßig (Nach der Anzahl) auf die anderen Zeilen verteilt werden.&lt;br&gt;Wenn der Gesamtbetrag über der Summe der Höchstbeträge liegt, soll nicht alles zugewiesen werden.&lt;br&gt;&lt;br&gt;Ich bin schon etwas Betriebsblind, aber kann man dafür ein Update-Statement bauen, mit dem ich diese Werte jeweils ausrechne für beliebig viele Sätze, ober muss ich eine Schleife laufen lassen?&lt;br&gt;&lt;br/&gt;</description>
      <pubDate>Tue, 26 May 2015 08:46:29 GMT</pubDate>
      <guid>http://forum.geizhals.at/t866370,7475884.html#7475884</guid>
      <dc:creator>Infosauger</dc:creator>
      <dc:date>2015-05-26T08:46:29Z</dc:date>
    </item>
  </channel>
</rss>
