<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>MS SQL Frage / ISNULL / COALESCE</title>
    <link>http://forum.geizhals.at/feed.jsp?id=891946</link>
    <description>Geizhals-Forum</description>
    <item>
      <title>Re(2): MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7890291.html#7890291</link>
      <description>nicht immer, siehe z.B hier: &lt;a href="https://jonathanlewis.wordpress.com/2018/02/13/coalesce-v-nvl/" rel="noopener" target="_blank"&gt;https:/&lt;wbr/&gt;/&lt;wbr/&gt;jonathanlewis.wordpress.com/&lt;wbr/&gt;2018/&lt;wbr/&gt;02/&lt;wbr/&gt;13/&lt;wbr/&gt;coalesce-v-nvl/&lt;wbr/&gt;&lt;/a&gt; &lt;br&gt;Aber bzgl. short circuit hast du natürlich Recht, ich denke bei der Verwendung in der Spaltenliste gibt es keinen Vorteil von nvl ggü coalesce&lt;br/&gt;</description>
      <pubDate>Sat, 10 Mar 2018 14:00:41 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7890291.html#7890291</guid>
      <dc:creator>repugnant</dc:creator>
      <dc:date>2018-03-10T14:00:41Z</dc:date>
    </item>
    <item>
      <title>Re: MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7853496.html#7853496</link>
      <description>Ich kann das jetzt nur für Oracle sicher sagen. Da sollte aus Performance Sicht immer Coalesce verwendet werden, weil der Reihe nach nur solange die Ausdrücke ausgewertet werden, bis der erste Wert not null ergibt. Nvl (isnull für Oracle) wertet immer beide Ausdrücke aus. Das bedeutet also, wenn die Ausdrücke jeweils Subqueries sind, wird bei coalesce nur der erste Subquery ausgeführt, wenn not null, bei nvl auf jeden Fall beide.&lt;br&gt;Ich könnte mir vorstellen, dass das bei anderen RDBMS ähnlich ist.&lt;br&gt;&lt;br/&gt;</description>
      <pubDate>Sun, 19 Nov 2017 19:08:58 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7853496.html#7853496</guid>
      <dc:creator>Sir Hondo</dc:creator>
      <dc:date>2017-11-19T19:08:58Z</dc:date>
    </item>
    <item>
      <title>Re(2): MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7853288.html#7853288</link>
      <description>ist auch nicht so, war ein Fehler meinerseits, das Buch ist an dieser Stelle seltsam geschrieben und mir war nicht sofort klar worauf die hinauswollen. &lt;br/&gt;</description>
      <pubDate>Sun, 19 Nov 2017 06:12:09 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7853288.html#7853288</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-19T06:12:09Z</dc:date>
    </item>
    <item>
      <title>Re: MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7853229.html#7853229</link>
      <description>&lt;blockquote&gt;&lt;em&gt; COALESCE und als Alternative CONCAT&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;Kann ich mir nicht vorstellen. Wenn dann ist eine Mehrfachauswahl resp. CASE gemeint.&lt;br&gt;&lt;br&gt;pong&lt;br/&gt;</description>
      <pubDate>Sat, 18 Nov 2017 17:50:21 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7853229.html#7853229</guid>
      <dc:creator>pong</dc:creator>
      <dc:date>2017-11-18T17:50:21Z</dc:date>
    </item>
    <item>
      <title>Re(2): MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7853176.html#7853176</link>
      <description>&lt;blockquote&gt;&lt;em&gt; Query in jedem Fall doppelt ausgeführt&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;Bist Du sicher, dass das noch immer so ist? Der verlinkte Thread ist von 2008, seither hat sich bei SQL Server recht viel getan.&lt;br&gt;&lt;br&gt;Interessiert mich auch, muss ich da mal schlau machen.&lt;br/&gt;</description>
      <pubDate>Sat, 18 Nov 2017 14:13:07 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7853176.html#7853176</guid>
      <dc:creator>hhetl</dc:creator>
      <dc:date>2017-11-18T14:13:07Z</dc:date>
    </item>
    <item>
      <title>Re(2): MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7852894.html#7852894</link>
      <description>&lt;blockquote&gt;&lt;em&gt; CONCAT kommt von "concatenate" und verkettet einfach alle übergebenen&lt;br&gt;Zeichenketten, macht also etwas ganz anderes.&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;jo-das hab ich gestern dann auch noch selbst bemerkt. War im Buch etwas seltsam beschrieben-darum war mir das auch nicht klar. Darum hab ich dann das Posting auch überarbeitet.&lt;br&gt;&lt;br&gt;&lt;blockquote&gt;&lt;em&gt;&amp;nbsp;&amp;nbsp;ISNULL gibt es nur bei MSSQL, COALESCE ist SQL-Standard.&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;ah super, danke. Das macht auch Sinn da im Buch normalerweise immer erwähnt wird was MS spezifisch ist und was SQL Standard ist. Das wurde dann hier wohl einfach vergessen und hat mich darum etwas aus der Bahn geworfen. &lt;br/&gt;</description>
      <pubDate>Fri, 17 Nov 2017 08:18:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852894.html#7852894</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-17T08:18:30Z</dc:date>
    </item>
    <item>
      <title>Re: MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7852876.html#7852876</link>
      <description>&lt;blockquote&gt;&lt;em&gt; BZw was ist eigentlich der Unterschied zwischen CONCAT und COALESCE?&lt;br&gt;&lt;/em&gt;&lt;/blockquote&gt;&lt;br&gt;&lt;br&gt;wie dir schon wer gesagt hat, haben COALESCE und CONCAT nix miteinander zu tun.&lt;br&gt;&lt;br&gt;&lt;br&gt;Bei COALESCE gilt es zu beachten, dass das intern in einen case umgewandelt wird, was im Fall von Subqueries natürlich die Performance beeinflusst, da der Query in jedem Fall doppelt ausgeführt wird.&lt;br&gt;&lt;br&gt;Siehe auch:&lt;br&gt;&lt;a href="https://connect.microsoft.com/SQLServer/feedback/details/336002/unnecessarily-bad-performance-for-coalesce-subquery" rel="noopener" target="_blank"&gt;https:/&lt;wbr/&gt;/&lt;wbr/&gt;connect.microsoft.com/&lt;wbr/&gt;SQLServer/&lt;wbr/&gt;feedback/&lt;wbr/&gt;details/&lt;wbr/&gt;336002/&lt;wbr/&gt;unnecessarily-bad-performance-for-coalesce-subquery&lt;/a&gt; &lt;br/&gt;</description>
      <pubDate>Fri, 17 Nov 2017 07:20:27 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852876.html#7852876</guid>
      <dc:creator>zeddicus</dc:creator>
      <dc:date>2017-11-17T07:20:27Z</dc:date>
    </item>
    <item>
      <title>Re: MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7852870.html#7852870</link>
      <description>Differences between ISNULL and COALESCE:&lt;br&gt;&lt;a href="https://blogs.msdn.microsoft.com/sqltips/2008/06/26/differences-between-isnull-and-coalesce/" rel="noopener" target="_blank"&gt;https:/&lt;wbr/&gt;/&lt;wbr/&gt;blogs.msdn.microsoft.com/&lt;wbr/&gt;sqltips/&lt;wbr/&gt;2008/&lt;wbr/&gt;06/&lt;wbr/&gt;26/&lt;wbr/&gt;differences-between-isnull-and-coalesce/&lt;wbr/&gt;&lt;/a&gt; &lt;br&gt;&lt;br&gt;Die wichtigsten Unterschiede daraus für mich: ISNULL gibt es nur bei MSSQL, COALESCE ist SQL-Standard. Bei ISNULL kann man nur zwei Parameter übergeben, bei COALESCE beliebig viele.&lt;br&gt;&lt;br&gt;CONCAT kommt von "concatenate" und verkettet einfach alle übergebenen Zeichenketten, macht also etwas ganz anderes.&lt;br/&gt;</description>
      <pubDate>Fri, 17 Nov 2017 06:51:31 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852870.html#7852870</guid>
      <dc:creator>mko</dc:creator>
      <dc:date>2017-11-17T06:51:31Z</dc:date>
    </item>
    <item>
      <title>MS SQL Frage / ISNULL / COALESCE</title>
      <link>http://forum.geizhals.at/t891946,7852846.html#7852846</link>
      <description>Sitz grad vor meinem schlauen SQL Buch und es geht um den Umgang mit NULL&lt;br&gt;&lt;br&gt;Im Wifi KUrs hat man uns erzählt das man mit ISNULL(Wert, Ersatzwert) arbeitet.&lt;br&gt;&lt;br&gt;Beispiel:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, ISNULL(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Im Buch schreiben die nun nix von ISNULL sondern von COALESCE und als Alternative CONCAT&lt;br&gt;&lt;br&gt;Angewendet auf mein Bespiel von oben sieht die Abfrage nun so aus:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, COALESCE(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, CONCAT(akadgrad,+''+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Alle drei&amp;nbsp;&amp;nbsp;Abfragen geben das selbe Ergebnis aus. Wieso wird im Buch die ISNULL Funktion nicht erwähnt? Könnte es da einen Grund geben oder bevorzugt der Autor einfach die beiden anderen Funktionen? BZw was ist eigentlich der Unterschied zwischen CONCAT und COALESCE? Gibt's die Situation wo nur die eine Funktion eingesetzt werden kann und die andere nicht funktionieren wird?&lt;br/&gt;</description>
      <pubDate>Thu, 16 Nov 2017 22:38:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852846.html#7852846</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-16T22:38:30Z</dc:date>
    </item>
    <item>
      <title>MS SQL Frage / ISNULL / COALESCE</title>
      <link>http://forum.geizhals.at/t891946,7852839.html#7852839</link>
      <description>Sitz grad vor meinem schlauen und Buch und es geht um den Umgang mit NULL&lt;br&gt;&lt;br&gt;Im Wifi KUrs hat man uns erzählt das man mit ISNULL(Wert, Ersatzwert) arbeitet.&lt;br&gt;&lt;br&gt;Beispiel:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, ISNULL(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Im Buch schreiben die nun nix von ISNULL sondern von COALESCE und als Alternative CONCAT&lt;br&gt;&lt;br&gt;Angewendet auf mein Bespiel von oben sieht die Abfrage nun so aus:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, COALESCE(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;Beide Abfragen geben das selbe Ergebnis aus. Wieso wird im Buch die ISNULL Funktion nicht erwähnt? Könnte es da einen Grund geben oder bevorzugt der Autor einfach die beiden anderen Funktionen?&lt;br/&gt;</description>
      <pubDate>Thu, 16 Nov 2017 22:38:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852839.html#7852839</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-16T22:38:30Z</dc:date>
    </item>
    <item>
      <title>MS SQL Frage / ISNULL / COALESCE</title>
      <link>http://forum.geizhals.at/t891946,7852844.html#7852844</link>
      <description>Sitz grad vor meinem schlauen SQL Buch und es geht um den Umgang mit NULL&lt;br&gt;&lt;br&gt;Im Wifi KUrs hat man uns erzählt das man mit ISNULL(Wert, Ersatzwert) arbeitet.&lt;br&gt;&lt;br&gt;Beispiel:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, ISNULL(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Im Buch schreiben die nun nix von ISNULL sondern von COALESCE und als Alternative CONCAT&lt;br&gt;&lt;br&gt;Angewendet auf mein Bespiel von oben sieht die Abfrage nun so aus:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, COALESCE(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;Beide Abfragen geben das selbe Ergebnis aus. Wieso wird im Buch die ISNULL Funktion nicht erwähnt? Könnte es da einen Grund geben oder bevorzugt der Autor einfach die beiden anderen Funktionen?&lt;br/&gt;</description>
      <pubDate>Thu, 16 Nov 2017 22:38:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852844.html#7852844</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-16T22:38:30Z</dc:date>
    </item>
    <item>
      <title>MS SQL Frage / ISNULL / COALESCE /</title>
      <link>http://forum.geizhals.at/t891946,7852849.html#7852849</link>
      <description>Sitz grad vor meinem schlauen SQL Buch und es geht um den Umgang mit NULL&lt;br&gt;&lt;br&gt;Im Wifi KUrs hat man uns erzählt das man mit ISNULL(Wert, Ersatzwert) arbeitet.&lt;br&gt;&lt;br&gt;Beispiel:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, ISNULL(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Im Buch schreiben die nun nix von ISNULL sondern von COALESCE und als Alternative CONCAT&lt;br&gt;&lt;br&gt;Angewendet auf mein Bespiel von oben sieht die Abfrage nun so aus:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, COALESCE(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;Beide&amp;nbsp;&amp;nbsp;Abfragen geben das selbe Ergebnis aus. Wieso wird im Buch die ISNULL Funktion nicht erwähnt? Könnte es da einen Grund geben oder bevorzugt der Autor einfach die beiden anderen Funktionen? BZw was ist eigentlich der Unterschied zwischen CONCAT und COALESCE? Gibt's die Situation wo nur die eine Funktion eingesetzt werden kann und die andere nicht funktionieren wird?&lt;br/&gt;</description>
      <pubDate>Thu, 16 Nov 2017 22:38:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852849.html#7852849</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-16T22:38:30Z</dc:date>
    </item>
    <item>
      <title>MS SQL Frage / ISNULL / COALESCE / CONCAT</title>
      <link>http://forum.geizhals.at/t891946,7852847.html#7852847</link>
      <description>Sitz grad vor meinem schlauen SQL Buch und es geht um den Umgang mit NULL&lt;br&gt;&lt;br&gt;Im Wifi KUrs hat man uns erzählt das man mit ISNULL(Wert, Ersatzwert) arbeitet.&lt;br&gt;&lt;br&gt;Beispiel:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, ISNULL(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Im Buch schreiben die nun nix von ISNULL sondern von COALESCE und als Alternative CONCAT&lt;br&gt;&lt;br&gt;Angewendet auf mein Bespiel von oben sieht die Abfrage nun so aus:&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, COALESCE(akadgrad,'')+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;SELECT akadgrad, Vorname, Nachname, CONCAT(akadgrad,+''+Vorname+'&amp;nbsp;&amp;nbsp;'+Nachname AS NAME.....&lt;br&gt;&lt;br&gt;&lt;br&gt;Alle drei&amp;nbsp;&amp;nbsp;Abfragen geben das selbe Ergebnis aus. Wieso wird im Buch die ISNULL Funktion nicht erwähnt? Könnte es da einen Grund geben oder bevorzugt der Autor einfach die beiden anderen Funktionen? BZw was ist eigentlich der Unterschied zwischen CONCAT und COALESCE? Gibt's die Situation wo nur die eine Funktion eingesetzt werden kann und die andere nicht funktionieren wird?&lt;br/&gt;</description>
      <pubDate>Thu, 16 Nov 2017 22:38:30 GMT</pubDate>
      <guid>http://forum.geizhals.at/t891946,7852847.html#7852847</guid>
      <dc:creator>User545539</dc:creator>
      <dc:date>2017-11-16T22:38:30Z</dc:date>
    </item>
  </channel>
</rss>
