{"id":486,"date":"2016-01-18T06:14:58","date_gmt":"2016-01-18T05:14:58","guid":{"rendered":"https:\/\/launix.de\/launix\/?p=486"},"modified":"2023-07-11T08:30:22","modified_gmt":"2023-07-11T06:30:22","slug":"mit-sql-statistiken-errechnen","status":"publish","type":"post","link":"https:\/\/launix.de\/launix\/en\/mit-sql-statistiken-errechnen\/","title":{"rendered":"Mit SQL Statistiken errechnen"},"content":{"rendered":"<p>In 99% der F\u00e4lle wird SQL zum Ablegen und Auslesen von Daten aus einer Datenbank benutzt. Doch die wenigsten wissen, dass man mit SQL auch komplizierte statistische Berechnungen durchf\u00fchren kann.<\/p>\n<h2>Geschichte<\/h2>\n<p>1970 wurden Relationale Datenbanken erstmals erw\u00e4hnt. Ihre Entwicklung weg von der Schritt-f\u00fcr-Schritt-Programmierung hin zu deklarativer, der Mathematik \u00e4hnlicher, Ausdrucksweise bei der Berechnung mit Daten, f\u00fchrte zu einer rasanten Entwicklung in der Datenverarbeitung. Man trennte auf einmal die Verwendung der Daten von der Speicherung. W\u00e4hrend sich die Anwendung darum k\u00fcmmert, was mit den Daten geschieht und was sie bedeuten, organisiert sich das Datenbanksystem selbstst\u00e4ndig, indem es Speicherstrukturen optimiert, Indizes anlegt und Anfragepl\u00e4ne umschreibt und optimiert. Auf diese Weise entwickelt man einmalig beispielsweise statistische Formeln und anschlie\u00dfend kann jedes SQL-f\u00e4hige Datenbanksystem diese ausrechnen. Werden beispielsweise die Datenbest\u00e4nde gr\u00f6\u00dfer, kann man \u00fcber ein kommerzielles DBMS nachdenken.<\/p>\n<h2>Der Group-Operator<\/h2>\n<p>Mit der GROUP BY-Klausel von SQL sortiert man die einzelnen Datens\u00e4tze in Kategorien ein. Der Group-Operator ist die Grundlage f\u00fcr alle Statistiken, denn er f\u00e4sst Datens\u00e4tze zusammen. Mit dem Gruppierungsausdruck gibt man an, nach welchem Merkmal Datens\u00e4tze zusammengefasst werden. Die Wahrscheinlichkeit <code>P(A | B)<\/code> berechnet man mit beispielsweise mit <code>SELECT .... GROUP BY B<\/code>. Der Gruppierungsausdruck kann sowohl Spalten enthalten (beispielsweise gruppiere Ums\u00e4tze nach Kategorie), aber auch Berechnungen (gruppiere nach Tageszeit des Bestelldatums, gruppiere nach Wochentag, gruppiere nach unter- und \u00fcber 1.000\u20ac Umsatz).<\/p>\n<h2>Der SUM- und COUNT-Operator<\/h2>\n<p>Summen eignen sich, um Gr\u00f6\u00dfenvergleiche numerischer Werte zu erm\u00f6glichen. Beispielsweise l\u00e4sst sich der Umsatz einer Sparte aufsummieren. Beim Z\u00e4hlen ist es genau so, nur dass jeweils eine 1 aufsummiert wird.<\/p>\n<h2>Der Heilige Gral: AVG<\/h2>\n<p>Mit der AVG-Funktion berechnet man normalerweise Durchschnitte, beispielsweise das durchschnittliche Gehalt einer Abteilung. Wir Statistiker k\u00f6nnen aber wesentlich mehr damit anstellen. Misst man beispielsweise den Durchschnitt eines boolschen Ausdrucks, l\u00e4sst sich eine Prozentzahl berechnen. Beispiel: <code>SELECT AVG(Alter < 18) FROM Besucher<\/code> errechnet, welcher Anteil der Besucher unter 18 Jahren sind.<\/p>\n<p>Insbesondere in der Wahrscheinlichkeitsrechnung ist der AVG-Operator essenziell, denn man kann den Satz von Bayes prima in SQL ausdr\u00fccken, indem man einfach den Durchschnitt aller Wahrscheinlichkeiten gruppiert nach der Bedingung errechnet. Was man damit anstellen kann, k\u00f6nnen Sie im <a href=\"https:\/\/launix.de\/launix\/en\/mit-wahrscheinlichkeiten-zu-besseren-entscheidungen\/\" target=\"_blank\" rel=\"noopener\">Beitrag \u00fcber Wahrscheinlichkeiten<\/a> nachlesen.<\/p>","protected":false},"excerpt":{"rendered":"<p>In 99% der F\u00e4lle wird SQL zum Ablegen und Auslesen von Daten aus einer Datenbank benutzt. Doch die wenigsten wissen, dass man mit SQL auch komplizierte statistische Berechnungen durchf\u00fchren kann. Geschichte 1970 wurden Relationale Datenbanken erstmals erw\u00e4hnt. Ihre Entwicklung weg von der Schritt-f\u00fcr-Schritt-Programmierung hin zu deklarativer, der Mathematik \u00e4hnlicher, Ausdrucksweise bei der Berechnung mit Daten,&#8230;<\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_editorskit_title_hidden":false,"_editorskit_reading_time":0,"_editorskit_is_block_options_detached":false,"_editorskit_block_options_position":"{}","_uag_custom_page_level_css":"","footnotes":""},"categories":[130,128],"tags":[12,29],"class_list":["post-486","post","type-post","status-publish","format-standard","hentry","category-buero-optimieren","category-programming","tag-controlling","tag-sql","single-item"],"featured_image_urls_v2":{"full":"","thumbnail":"","medium":"","medium_large":"","large":"","1536x1536":"","2048x2048":"","trp-custom-language-flag":"","xs-thumb":"","appku-shop-single":""},"post_excerpt_stackable_v2":"<p>In 99% der F\u00e4lle wird SQL zum Ablegen und Auslesen von Daten aus einer Datenbank benutzt. Doch die wenigsten wissen, dass man mit SQL auch komplizierte statistische Berechnungen durchf\u00fchren kann. Geschichte 1970 wurden Relationale Datenbanken erstmals erw\u00e4hnt. Ihre Entwicklung weg von der Schritt-f\u00fcr-Schritt-Programmierung hin zu deklarativer, der Mathematik \u00e4hnlicher, Ausdrucksweise bei der Berechnung mit Daten, f\u00fchrte zu einer rasanten Entwicklung in der Datenverarbeitung. Man trennte auf einmal die Verwendung der Daten von der Speicherung. W\u00e4hrend sich die Anwendung darum k\u00fcmmert, was mit den Daten geschieht und was sie bedeuten, organisiert sich das Datenbanksystem selbstst\u00e4ndig, indem es Speicherstrukturen optimiert, Indizes anlegt&hellip;<\/p>\n","category_list_v2":"<a href=\"https:\/\/launix.de\/launix\/en\/category\/buero-optimieren\/\" rel=\"category tag\">B\u00fcro<\/a>, <a href=\"https:\/\/launix.de\/launix\/en\/category\/programming\/\" rel=\"category tag\">Programming<\/a>","author_info_v2":{"name":"Carl-Philip H\u00e4nsch","url":"https:\/\/launix.de\/launix\/en\/author\/carli\/"},"comments_num_v2":"0 comments","uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"trp-custom-language-flag":false,"xs-thumb":false,"appku-shop-single":false},"uagb_author_info":{"display_name":"Carl-Philip H\u00e4nsch","author_link":"https:\/\/launix.de\/launix\/en\/author\/carli\/"},"uagb_comment_info":0,"uagb_excerpt":"In 99% der F\u00e4lle wird SQL zum Ablegen und Auslesen von Daten aus einer Datenbank benutzt. Doch die wenigsten wissen, dass man mit SQL auch komplizierte statistische Berechnungen durchf\u00fchren kann. Geschichte 1970 wurden Relationale Datenbanken erstmals erw\u00e4hnt. Ihre Entwicklung weg von der Schritt-f\u00fcr-Schritt-Programmierung hin zu deklarativer, der Mathematik \u00e4hnlicher, Ausdrucksweise bei der Berechnung mit Daten,...","_links":{"self":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts\/486","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/comments?post=486"}],"version-history":[{"count":6,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts\/486\/revisions"}],"predecessor-version":[{"id":5337,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/posts\/486\/revisions\/5337"}],"wp:attachment":[{"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/media?parent=486"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/categories?post=486"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/launix.de\/launix\/en\/wp-json\/wp\/v2\/tags?post=486"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}