<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>SQL ausgabe liste nach hinten</title>
    <link>http://forum.geizhals.at/feed.jsp?id=374071</link>
    <description>Geizhals-Forum</description>
    <item>
      <title>Re(3): SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2937153.html#2937153</link>
      <description>&lt;br&gt;ich und aufmerksam??! jetzt scherzt du aber! &lt;img src="teeth.gif" width="16" height="19" align="absmiddle" alt="|-D"/&gt;&lt;br&gt;&lt;br&gt;wen der die letzten haben will, dann einfach die reihenfolge (order by DESC) der sub-query umändern &lt;img src="zwinker.gif" width="16" height="19" align="absmiddle" alt=";)"/&gt; ... das geht in beide richtungen &lt;img src="zwinker.gif" width="16" height="19" align="absmiddle" alt=";)"/&gt;&lt;img src="zwinker.gif" width="16" height="19" align="absmiddle" alt=";)"/&gt;&lt;img src="teeth.gif" width="16" height="19" align="absmiddle" alt="|-D"/&gt;&lt;br/&gt;</description>
      <pubDate>Tue, 08 Nov 2005 11:58:31 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2937153.html#2937153</guid>
      <dc:creator>teleth</dc:creator>
      <dc:date>2005-11-08T11:58:31Z</dc:date>
    </item>
    <item>
      <title>Re(2): SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2937034.html#2937034</link>
      <description>uih - sonst bist doch auch immer so aufmerksam &lt;img src="zwinker.gif" width="16" height="19" align="absmiddle" alt=";-)"/&gt;&lt;br&gt;&lt;br&gt;er wollte ja die LETZTEN, nicht die ersten 10 datensätze&lt;br/&gt;</description>
      <pubDate>Tue, 08 Nov 2005 11:12:09 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2937034.html#2937034</guid>
      <dc:creator>Penguin</dc:creator>
      <dc:date>2005-11-08T11:12:09Z</dc:date>
    </item>
    <item>
      <title>Re(3): SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2934809.html#2934809</link>
      <description>Deine Abfrage ist äquivalent mit diesen hier:&lt;br&gt;&lt;br&gt;SELECT * FROM test WHERE TRUE; oder&lt;br&gt;SELECT * FROM test WHERE FALSE;&lt;br&gt;&lt;br&gt;Also je nachdem ob ein Datensatz mit der ID n existiert werden entweder alle Datensätze oder keine Datensätze aus der Tabelle selektiert. Im Übrigen hast du vergessen einen Teil einzubauen, wo die 5 vorhergehenden Datensätze selektiert werden.&lt;br&gt;&lt;br&gt;Ich habe schon eine Abfrage mit EXISTS in Erwägung gezogen, aber MySQL5 sagte in einem EXPLAIN, dass ein "unmögliches WHERE" verwendet wird. Deshalb hab ich die Query gleich verworfen. Heute stellte ich jedoch fest, dass ich eine ID verwendete, die in meiner Testtabelle nicht existierte (deswegen das "unmögliche WHERE"). Also alternativ kann man auch folgendes schreiben:&lt;br&gt;&lt;br&gt;SELECT * FROM table WHERE EXISTS(SELECT * FROM table WHERE ID=x) AND ID&amp;lt;=x ORDER BY ID DESC LIMIT 6;&lt;br&gt;&lt;br&gt;Jetzt werden Datensätze dessen IDs kleiner gleich x sind selektiert, sofern die Bedingung erfüllt ist, dass ein Datensatz mit der ID x existiert. Funktioniert bei mir tadellos. Die Frage ist allerdings welche Version von MySQL der Fragestellende benutzt, denn Subqueries gibt es erst seit der Version 4.1.&lt;br/&gt;</description>
      <pubDate>Mon, 07 Nov 2005 14:20:09 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2934809.html#2934809</guid>
      <dc:creator>Xmolch</dc:creator>
      <dc:date>2005-11-07T14:20:09Z</dc:date>
    </item>
    <item>
      <title>Re: SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2934032.html#2934032</link>
      <description>&lt;br&gt;nennt sich "top n" abfrage ... weil du dir zb die top 10 datensätze ausgeben lässt...&lt;br&gt;&lt;br&gt;--&gt; &lt;a href="https://startpage.com/do/search?hl=de&amp;q=top-n+sql+select+mysql&amp;meta=" rel="noopener" target="_blank"&gt;https:/&lt;wbr/&gt;/&lt;wbr/&gt;startpage.com/&lt;wbr/&gt;do/&lt;wbr/&gt;search?&lt;wbr/&gt;hl=de&amp;&lt;wbr/&gt;q=top-n+sql+select+mysql&amp;&lt;wbr/&gt;meta=&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;img src="zwinker.gif" width="16" height="19" align="absmiddle" alt=";)"/&gt;&lt;img src="zwinker.gif" width="16" height="19" align="absmiddle" alt=";)"/&gt;&lt;br/&gt;</description>
      <pubDate>Mon, 07 Nov 2005 09:16:15 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2934032.html#2934032</guid>
      <dc:creator>teleth</dc:creator>
      <dc:date>2005-11-07T09:16:15Z</dc:date>
    </item>
    <item>
      <title>Re(2): SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2933628.html#2933628</link>
      <description>Das kann man wohl auch in einer Abfrage machen. Bin leider nicht wirklich SQL-bewandert, aber zumindest funktioniert hat es jetzt so (MySQL5):&lt;br&gt;SELECT * FROM test WHERE EXISTS (SELECT * FROM test WHERE id = &lt;i&gt;n&lt;/i&gt;);&lt;br&gt;Wenn der Subselect war ist, dann wird der eigentliche select ausgefuehrt, ansonsten nicht, so wie ich's versteh.&lt;br&gt;Abend,&lt;br&gt;j.&lt;br/&gt;</description>
      <pubDate>Mon, 07 Nov 2005 01:04:32 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2933628.html#2933628</guid>
      <dc:creator>Psychopath</dc:creator>
      <dc:date>2005-11-07T01:04:32Z</dc:date>
    </item>
    <item>
      <title>Re: SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2933409.html#2933409</link>
      <description>Hallo!&lt;br&gt;&lt;br&gt;Du willst also einen bestimmten Datensatz selektieren, und ausgehend von diesem möchtest du die 5 vorhergehenden Datensätze auswählen. Das ist im Grunde genommen ohne weiteres nicht möglich. Es gibt nämlich keine Möglichkeit auf die "natürliche Ordnung" der Datensätze in einer Datenbank zuzugreifen (jedenfalls ist mir solch eine DB nicht bekannt).&lt;br&gt;&lt;br&gt;Nehmen wir z.B. an, du hast folgende Datensätze in einer Tabelle (nur die IDs):&lt;br&gt;&lt;br&gt;1, 2, 4, 9, 8, 6, 10&lt;br&gt;&lt;br&gt;Anmerkung: Es ist eine total willkürliche, nicht-konsekutive Sequenz. D.h. die Zahlenfolge weist Lücken auf und ist sprunghaft, also nicht strikt fortlaufend. Diese ID-Zahlenfolge kann durchaus das Resultat mehrerer DELETE und INSERT Abfragen sein.&lt;br&gt;&lt;br&gt;Was du jetzt (vermutlich) willst, ist z.B. den Datensatz #6 und zusätzlich die Datensätze 1,2,4,9 und 8 auszuwählen, da sie in der "natürlichen Ordnung" die 5 vorhergehenden sind. Das ist aber, wie bereits erwähnt, nicht durchführbar.&lt;br&gt;&lt;br&gt;Du kannst aber als mögliche, ähnliche Lösung folgendes tun: den Datensatz #&lt;b&gt;x&lt;/b&gt; auswählen und außerdem noch alle Datensätze, die eine ID kleiner als &lt;b&gt;x&lt;/b&gt; haben. Die entsprechende Abfrage:&lt;br&gt;&lt;br&gt;SELECT * FROM table WHERE ID=&lt;b&gt;x&lt;/b&gt; OR ID&amp;lt;&lt;b&gt;x&lt;/b&gt; ORDER BY&amp;nbsp;&amp;nbsp;ID DESC LIMIT 6&lt;br&gt;&lt;br&gt;Einen Nachteil hat diese Abfrage: es können Datensätze selektiert werden, selbst wenn kein Datensatz mit der ID &lt;b&gt;x&lt;/b&gt; existiert. Dieses Problem kannst du umgehen, indem du zwei, separate Abfragen durchführst. Also zuerst WHERE ID=&lt;b&gt;x&lt;/b&gt; dann WHERE ID&amp;lt;&lt;b&gt;x&lt;/b&gt; ORDER BY&amp;nbsp;&amp;nbsp;ID DESC LIMIT 5.&lt;br&gt;&lt;br&gt;Hope it helps &lt;img src="smile.gif" width="16" height="19" align="absmiddle" alt=":)"/&gt;&lt;br/&gt;</description>
      <pubDate>Sun, 06 Nov 2005 22:36:10 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2933409.html#2933409</guid>
      <dc:creator>Xmolch</dc:creator>
      <dc:date>2005-11-06T22:36:10Z</dc:date>
    </item>
    <item>
      <title>Re(2): SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2933018.html#2933018</link>
      <description>&lt;blockquote&gt;&lt;em&gt; limit 0,5 order by id desc; so müsste das klappen, glaub ich. &lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;leider nicht. weil damit wird als erster datensatz der gefundete&lt;br&gt;und die nächsten fünf ausgegeben - egal ob desc oder asc, es sind&lt;br&gt;immer diese fünf datensätze ...&lt;br/&gt;</description>
      <pubDate>Sun, 06 Nov 2005 19:27:37 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2933018.html#2933018</guid>
      <dc:creator>alexk</dc:creator>
      <dc:date>2005-11-06T19:27:37Z</dc:date>
    </item>
    <item>
      <title>Re: SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2932619.html#2932619</link>
      <description>limit 0,5 order by id desc; &lt;br&gt;so müsste das klappen, glaub ich. &lt;br/&gt;</description>
      <pubDate>Sun, 06 Nov 2005 17:31:40 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2932619.html#2932619</guid>
      <dc:creator>HKI</dc:creator>
      <dc:date>2005-11-06T17:31:40Z</dc:date>
    </item>
    <item>
      <title>SQL ausgabe liste nach hinten</title>
      <link>http://forum.geizhals.at/t374071,2931969.html#2931969</link>
      <description>hallo!&lt;br&gt;&lt;br&gt;ich möchte eine liste ausgeben, bei der der treffer und&lt;br&gt;die 5 _vorherigen_ datensätze ausgegeben werden.&lt;br&gt;&lt;br&gt;ich dachte an was, was ein limit -5 ausgibt.&lt;br&gt;&lt;br&gt;ist sowas mit mysql überhaupt möglich?&lt;br/&gt;</description>
      <pubDate>Sun, 06 Nov 2005 14:33:35 GMT</pubDate>
      <guid>http://forum.geizhals.at/t374071,2931969.html#2931969</guid>
      <dc:creator>alexk</dc:creator>
      <dc:date>2005-11-06T14:33:35Z</dc:date>
    </item>
  </channel>
</rss>
