<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>JOIN &#183; ASPICON Newsarchiv</title>
	<atom:link href="https://www.aspicon.de/news/tag/join/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.aspicon.de/news/tag/join/</link>
	<description>Database Technology and Service</description>
	<lastBuildDate>Mon, 07 Oct 2024 06:54:50 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://www.aspicon.de/wp-content/uploads/2023/12/favicon_white_verlauf_2-50x50.png</url>
	<title>JOIN &#183; ASPICON Newsarchiv</title>
	<link>https://www.aspicon.de/news/tag/join/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>SQL Tuning Tipp: Analytische Funktionen</title>
		<link>https://www.aspicon.de/news/sql-tuning-tipp-analytische-funktionen/</link>
		
		<dc:creator><![CDATA[Thilo Solbrig, Oracle Certified Master]]></dc:creator>
		<pubDate>Thu, 31 Oct 2019 07:55:00 +0000</pubDate>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Datenbank]]></category>
		<category><![CDATA[DBA Tipp]]></category>
		<category><![CDATA[JOIN]]></category>
		<category><![CDATA[Oracle Database]]></category>
		<category><![CDATA[Performance Tuning]]></category>
		<guid isPermaLink="false">https://www.aspicon.de/?p=7362</guid>

					<description><![CDATA[<p>Analytische Funktionen sind ein mächtiges Werkzeug zur Formulierung von Abfragen, die nicht oder nur aufwändig mit herkömmlichen Aggregatfunktionen zu formulieren wären. </p>
<p>Der Beitrag <a href="https://www.aspicon.de/news/sql-tuning-tipp-analytische-funktionen/">SQL Tuning Tipp: Analytische Funktionen</a> erschien zuerst auf <a href="https://www.aspicon.de">ASPICON</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="7362" class="elementor elementor-7362" data-elementor-settings="{&quot;ha_cmc_init_switcher&quot;:&quot;no&quot;}" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-3d4c97a elementor-section-full_width elementor-section-content-top header-negative-margin elementor-section-height-default elementor-section-height-default" data-id="3d4c97a" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-4c7154db container-diagonal-top-min-height header-positive-margin padding-row-100" data-id="4c7154db" data-element_type="column" data-e-type="column" data-settings="{&quot;background_background&quot;:&quot;classic&quot;}">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-2d7d0f03 colored-headline-on-mobile elementor-section-full_width elementor-section-height-default elementor-section-height-default" data-id="2d7d0f03" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-68e5c1ce" data-id="68e5c1ce" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-6e90bb4d elementor-widget elementor-widget-shortcode" data-id="6e90bb4d" data-element_type="widget" data-e-type="widget" data-widget_type="shortcode.default">
				<div class="elementor-widget-container">
							<div class="elementor-shortcode"> </div>
						</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-443f8023" data-id="443f8023" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap">
							</div>
		</div>
					</div>
		</section>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-7fc67385 elementor-section-full_width padding-row-100 elementor-section-height-default elementor-section-height-default" data-id="7fc67385" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5df6a1c5" data-id="5df6a1c5" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-3cf8113 header-breadcrumbs-black black elementor-widget elementor-widget-breadcrumbs" data-id="3cf8113" data-element_type="widget" data-e-type="widget" data-widget_type="breadcrumbs.default">
				<div class="elementor-widget-container">
					<p id="breadcrumbs"><span><span><a href="https://www.aspicon.de/">Home</a></span> → <span class="breadcrumb_last" aria-current="page">JOIN</span></span></p>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2e6f278 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2e6f278" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-7a3c0f9a" data-id="7a3c0f9a" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-70fb6297 elementor-widget elementor-widget-spacer" data-id="70fb6297" data-element_type="widget" data-e-type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6f9331f5 elementor-section-full_width padding-row-100 elementor-section-height-default elementor-section-height-default" data-id="6f9331f5" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-57d302c9" data-id="57d302c9" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5c6a9ad4 elementor-widget elementor-widget-theme-post-title elementor-page-title elementor-widget-heading" data-id="5c6a9ad4" data-element_type="widget" data-e-type="widget" data-widget_type="theme-post-title.default">
				<div class="elementor-widget-container">
					<h1 class="elementor-heading-title elementor-size-default">SQL Tuning Tipp: Analytische Funktionen</h1>				</div>
				</div>
				<div class="elementor-element elementor-element-292b444 ha-has-bg-overlay elementor-widget elementor-widget-global elementor-global-7902 elementor-widget-post-info" data-id="292b444" data-element_type="widget" data-e-type="widget" data-widget_type="post-info.default">
				<div class="elementor-widget-container">
							<ul class="elementor-inline-items elementor-icon-list-items elementor-post-info">
								<li class="elementor-icon-list-item elementor-repeater-item-ae89516 elementor-inline-item" itemprop="author">
										<span class="elementor-icon-list-icon">
								<i aria-hidden="true" class="far fa-user-circle"></i>							</span>
									<span class="elementor-icon-list-text elementor-post-info__item elementor-post-info__item--type-author">
							<span class="elementor-post-info__item-prefix">Verfasst von</span>
										Thilo Solbrig, Oracle Certified Master					</span>
								</li>
				<li class="elementor-icon-list-item elementor-repeater-item-253e24d elementor-inline-item" itemprop="datePublished">
										<span class="elementor-icon-list-icon">
								<i aria-hidden="true" class="fas fa-calendar"></i>							</span>
									<span class="elementor-icon-list-text elementor-post-info__item elementor-post-info__item--type-date">
										<time>31 Oktober 2019</time>					</span>
								</li>
				<li class="elementor-icon-list-item elementor-repeater-item-810d981 elementor-inline-item">
										<span class="elementor-icon-list-icon">
								<i aria-hidden="true" class="far fa-clock"></i>							</span>
									<span class="elementor-icon-list-text elementor-post-info__item elementor-post-info__item--type-time">
										<time>08:55</time>					</span>
								</li>
				<li class="elementor-icon-list-item elementor-repeater-item-acd9d0d elementor-inline-item" itemprop="about">
										<span class="elementor-icon-list-icon">
								<i aria-hidden="true" class="fas fa-tags"></i>							</span>
									<span class="elementor-icon-list-text elementor-post-info__item elementor-post-info__item--type-terms">
										<span class="elementor-post-info__terms-list">
				<a href="https://www.aspicon.de/news/tag/datenbank/" class="elementor-post-info__terms-list-item">Datenbank</a>, <a href="https://www.aspicon.de/news/tag/dba-tipp/" class="elementor-post-info__terms-list-item">DBA Tipp</a>, <a href="https://www.aspicon.de/news/tag/join/" class="elementor-post-info__terms-list-item">JOIN</a>, <a href="https://www.aspicon.de/news/tag/oracle/" class="elementor-post-info__terms-list-item">Oracle</a>, <a href="https://www.aspicon.de/news/tag/oracle-database/" class="elementor-post-info__terms-list-item">Oracle Database</a>, <a href="https://www.aspicon.de/news/tag/performance-tuning/" class="elementor-post-info__terms-list-item">Performance Tuning</a>				</span>
					</span>
								</li>
				</ul>
						</div>
				</div>
				<div class="elementor-element elementor-element-ad6f8cd elementor-widget elementor-widget-text-editor" data-id="ad6f8cd" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Hinsichtlich Performance liegt die Stärke analytischer Funktionen darin, dass die analytischen Aggregate gleich parallel zur eigentlichen Abfrage berechnet werden – statt separater Berechnung in Subqueries verbunden mit JOIN-Kosten. Ich habe hier einige Beispiele zusammengestellt, welche das verdeutlichen sollen:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-03a6342 elementor-widget elementor-widget-heading" data-id="03a6342" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Beispiel 1: Ermittle die Differenz der Gehälter zum Abteilungsdurchschnitt</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-2c1cf98 elementor-widget elementor-widget-heading" data-id="2c1cf98" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Mit herkömmlichen Aggregatfunktionen:</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-66853592 ha-has-bg-overlay elementor-widget elementor-widget-text-editor" data-id="66853592" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<pre>SELECT first_name, last_name, salary emp_salary, avg_salary dept_avg, salary - avg_salary salary_diff<br>FROM employees e JOIN (<br>SELECT department_id, round(AVG(salary)) avg_salary<br>FROM employees<br>GROUP BY department_id) USING ( department_id );<br><br>----------------------------------------------------------------------------------<br>| Id &nbsp;| Operation &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Name &nbsp; &nbsp; &nbsp;| Rows &nbsp;| Bytes | Cost (%CPU)| Time &nbsp; &nbsp; |<br>----------------------------------------------------------------------------------<br>| &nbsp; 0 | SELECT STATEMENT &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 339 | 19323 | &nbsp; &nbsp; 7 &nbsp;(15)| 00:00:01 |<br>|* &nbsp;1 | &nbsp;HASH JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 339 | 19323 | &nbsp; &nbsp; 7 &nbsp;(15)| 00:00:01 |<br>| &nbsp; 2 | &nbsp; VIEW &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp;11 | &nbsp; 286 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 3 | &nbsp; &nbsp;HASH GROUP BY &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp;11 | &nbsp; 176 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 4 | &nbsp; &nbsp; TABLE ACCESS FULL| EMPLOYEES | &nbsp; 107 | &nbsp;1712 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>| &nbsp; 5 | &nbsp; TABLE ACCESS FULL &nbsp;| EMPLOYEES | &nbsp; 107 | &nbsp;3317 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>----------------------------------------------------------------------------------</pre>								</div>
				</div>
				<div class="elementor-element elementor-element-55b5560 elementor-widget elementor-widget-heading" data-id="55b5560" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Mit analytischer Funktion:</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-a5671db ha-has-bg-overlay elementor-widget elementor-widget-text-editor" data-id="a5671db" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<pre>SELECT first_name, last_name, salary emp_salary,<br>round(avg(salary) over (partition by department_id)) dept_avg,<br>salary - round(avg(salary) over (partition by department_id)) salary_diff<br>FROM employees;<br><br>--------------------------------------------------------------------------------<br>| Id &nbsp;| Operation &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Name &nbsp; &nbsp; &nbsp;| Rows &nbsp;| Bytes | Cost (%CPU)| Time &nbsp; &nbsp; |<br>--------------------------------------------------------------------------------<br>| &nbsp; 0 | SELECT STATEMENT &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 107 | &nbsp;3317 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 1 | &nbsp;WINDOW SORT &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 107 | &nbsp;3317 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 2 | &nbsp; TABLE ACCESS FULL| EMPLOYEES | &nbsp; 107 | &nbsp;3317 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>--------------------------------------------------------------------------------</pre>								</div>
				</div>
				<div class="elementor-element elementor-element-3cfaff8 elementor-widget elementor-widget-heading" data-id="3cfaff8" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Beispiel 2: Bestimme das Ranking der Mitarbeiter innerhalb ihrer Abteilung nach Gehalt</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-96a4643 elementor-widget elementor-widget-heading" data-id="96a4643" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Mit herkömmlichen Aggregatfunktionen:</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-00512c3 elementor-widget elementor-widget-text-editor" data-id="00512c3" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>nicht abbildbar.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-4c8e797 elementor-widget elementor-widget-heading" data-id="4c8e797" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Mit analytischer Funktion:</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-bbbb379 ha-has-bg-overlay elementor-widget elementor-widget-text-editor" data-id="bbbb379" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<pre>SELECT first_name, last_name, department_name, salary,<br>RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) rang<br>FROM employees JOIN departments using (department_id);<br><br>---------------------------------------------------------------------------------------------<br>| Id &nbsp;| Operation &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | Name &nbsp; &nbsp; &nbsp; &nbsp;| Rows &nbsp;| Bytes | Cost (%CPU)| Time &nbsp; &nbsp; |<br>---------------------------------------------------------------------------------------------<br>| &nbsp; 0 | SELECT STATEMENT &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;4982 | &nbsp; &nbsp; 7 &nbsp;(29)| 00:00:01 |<br>| &nbsp; 1 | &nbsp;WINDOW SORT &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;4982 | &nbsp; &nbsp; 7 &nbsp;(29)| 00:00:01 |<br>| &nbsp; 2 | &nbsp; MERGE JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;4982 | &nbsp; &nbsp; 6 &nbsp;(17)| 00:00:01 |<br>| &nbsp; 3 | &nbsp; &nbsp;TABLE ACCESS BY INDEX ROWID| DEPARTMENTS | &nbsp; &nbsp;27 | &nbsp; 432 | &nbsp; &nbsp; 2 &nbsp; (0)| 00:00:01 |<br>| &nbsp; 4 | &nbsp; &nbsp; INDEX FULL SCAN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | DEPT_ID_PK &nbsp;| &nbsp; &nbsp;27 | &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; 1 &nbsp; (0)| 00:00:01 |<br>|* &nbsp;5 | &nbsp; &nbsp;SORT JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 107 | &nbsp;3317 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 6 | &nbsp; &nbsp; TABLE ACCESS FULL &nbsp; &nbsp; &nbsp; &nbsp; | EMPLOYEES &nbsp; | &nbsp; 107 | &nbsp;3317 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>---------------------------------------------------------------------------------------------<br><br>FIRST_NAME &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; LAST_NAME &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;DEPARTMENT_NAME &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;SALARY &nbsp; &nbsp; &nbsp; RANG<br>-------------------- -------------------- -------------------- ---------- ----------<br>Jennifer &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Whalen &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Administration &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 4400 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1<br>Michael &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Hartstein &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Marketing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 13000 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1<br>Pat &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Fay &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Marketing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;6000 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2<br>Den &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Raphaely &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Purchasing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;11000 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;1<br>Alexander &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Khoo &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Purchasing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 3100 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;2<br>Shelli &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Baida &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Purchasing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2900 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;3<br>Sigal &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Tobias &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Purchasing &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 2800 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4</pre>								</div>
				</div>
				<div class="elementor-element elementor-element-c6e99bb elementor-widget elementor-widget-heading" data-id="c6e99bb" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Beispiel 3: Ermittle das zweithöchste Gehalt je Abteilung</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-d9be37b elementor-widget elementor-widget-heading" data-id="d9be37b" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Mit herkömmlichen Aggregatfunktionen:</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-7b6bdf5 ha-has-bg-overlay elementor-widget elementor-widget-text-editor" data-id="7b6bdf5" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<pre>SELECT department_name, max(salary) salary – von diesen Gehältern das größte<br>FROM employees e JOIN departments d on (e.department_id=d.department_id)<br>-- alle Gehälter, die kleiner als das größte sind<br>WHERE salary &lt; ANY (<br>SELECT salary<br>FROM employees<br>WHERE department_id=e.department_id)<br>GROUP BY department_name;<br><br>----------------------------------------------------------------------------------------------<br>| Id &nbsp;| Operation &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| Name &nbsp; &nbsp; &nbsp; &nbsp;| Rows &nbsp;| Bytes | Cost (%CPU)| Time &nbsp; &nbsp; |<br>----------------------------------------------------------------------------------------------<br>| &nbsp; 0 | SELECT STATEMENT &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; 5 | &nbsp; 240 | &nbsp; &nbsp;10 &nbsp;(20)| 00:00:01 |<br>| &nbsp; 1 | &nbsp;HASH GROUP BY &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; 5 | &nbsp; 240 | &nbsp; &nbsp;10 &nbsp;(20)| 00:00:01 |<br>|* &nbsp;2 | &nbsp; HASH JOIN SEMI &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; 5 | &nbsp; 240 | &nbsp; &nbsp; 9 &nbsp;(12)| 00:00:01 |<br>| &nbsp; 3 | &nbsp; &nbsp;MERGE JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;3392 | &nbsp; &nbsp; 6 &nbsp;(17)| 00:00:01 |<br>| &nbsp; 4 | &nbsp; &nbsp; TABLE ACCESS BY INDEX ROWID| DEPARTMENTS | &nbsp; &nbsp;27 | &nbsp; 432 | &nbsp; &nbsp; 2 &nbsp; (0)| 00:00:01 |<br>| &nbsp; 5 | &nbsp; &nbsp; &nbsp;INDEX FULL SCAN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | DEPT_ID_PK &nbsp;| &nbsp; &nbsp;27 | &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; 1 &nbsp; (0)| 00:00:01 |<br>|* &nbsp;6 | &nbsp; &nbsp; SORT JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 107 | &nbsp;1712 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 7 | &nbsp; &nbsp; &nbsp;TABLE ACCESS FULL &nbsp; &nbsp; &nbsp; &nbsp; | EMPLOYEES &nbsp; | &nbsp; 107 | &nbsp;1712 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>| &nbsp; 8 | &nbsp; &nbsp;TABLE ACCESS FULL &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | EMPLOYEES &nbsp; | &nbsp; 107 | &nbsp;1712 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>----------------------------------------------------------------------------------------------</pre>								</div>
				</div>
				<div class="elementor-element elementor-element-88ad3f7 elementor-widget elementor-widget-heading" data-id="88ad3f7" data-element_type="widget" data-e-type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-default">Mit analytischer Funktion:</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-d2f8181 ha-has-bg-overlay elementor-widget elementor-widget-text-editor" data-id="d2f8181" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<pre>SELECT distinct department_name, salary<br>FROM (<br>SELECT department_name, salary, DENSE_RANK() OVER (PARTITION BY department_id ORDER BY salary DESC) rang<br>FROM employees JOIN departments USING (department_id))<br>WHERE rang=2;<br><br>-----------------------------------------------------------------------------------------------<br>| Id &nbsp;| Operation &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | Name &nbsp; &nbsp; &nbsp; &nbsp;| Rows &nbsp;| Bytes | Cost (%CPU)| Time &nbsp; &nbsp; |<br>-----------------------------------------------------------------------------------------------<br>| &nbsp; 0 | SELECT STATEMENT &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp;27 | &nbsp;1026 | &nbsp; &nbsp; 8 &nbsp;(38)| 00:00:01 |<br>| &nbsp; 1 | &nbsp;HASH UNIQUE &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp;27 | &nbsp;1026 | &nbsp; &nbsp; 8 &nbsp;(38)| 00:00:01 |<br>|* &nbsp;2 | &nbsp; VIEW &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;4028 | &nbsp; &nbsp; 7 &nbsp;(29)| 00:00:01 |<br>|* &nbsp;3 | &nbsp; &nbsp;WINDOW SORT PUSHED RANK &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;3392 | &nbsp; &nbsp; 7 &nbsp;(29)| 00:00:01 |<br>| &nbsp; 4 | &nbsp; &nbsp; MERGE JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 106 | &nbsp;3392 | &nbsp; &nbsp; 6 &nbsp;(17)| 00:00:01 |<br>| &nbsp; 5 | &nbsp; &nbsp; &nbsp;TABLE ACCESS BY INDEX ROWID| DEPARTMENTS | &nbsp; &nbsp;27 | &nbsp; 432 | &nbsp; &nbsp; 2 &nbsp; (0)| 00:00:01 |<br>| &nbsp; 6 | &nbsp; &nbsp; &nbsp; INDEX FULL SCAN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | DEPT_ID_PK &nbsp;| &nbsp; &nbsp;27 | &nbsp; &nbsp; &nbsp; | &nbsp; &nbsp; 1 &nbsp; (0)| 00:00:01 |<br>|* &nbsp;7 | &nbsp; &nbsp; &nbsp;SORT JOIN &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;| &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | &nbsp; 107 | &nbsp;1712 | &nbsp; &nbsp; 4 &nbsp;(25)| 00:00:01 |<br>| &nbsp; 8 | &nbsp; &nbsp; &nbsp; TABLE ACCESS FULL &nbsp; &nbsp; &nbsp; &nbsp; | EMPLOYEES &nbsp; | &nbsp; 107 | &nbsp;1712 | &nbsp; &nbsp; 3 &nbsp; (0)| 00:00:01 |<br>-----------------------------------------------------------------------------------------------</pre>								</div>
				</div>
				<div class="elementor-element elementor-element-644fc83 elementor-widget elementor-widget-text-editor" data-id="644fc83" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									Hier findest du weitere Posts zu den Themen <a title="Posts zu SQL Tuning" href="https://www.aspicon.de/news/tag/sql-tuning/">SQL Tuning</a> bzw. <a title="Posts zu Performance Tuning" href="https://www.aspicon.de/news/tag/performance-tuning/">Performance Tuning</a> aus unserem News Bereich.								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6c543c1c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6c543c1c" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2e6e4768" data-id="2e6e4768" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<section class="elementor-section elementor-inner-section elementor-element elementor-element-4afaf94f elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="4afaf94f" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-706157f7" data-id="706157f7" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-61477aef elementor-widget elementor-widget-image" data-id="61477aef" data-element_type="widget" data-e-type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="40" height="28" src="https://www.aspicon.de/wp-content/uploads/2021/01/icon-arrow_right_medium-violet-blue.svg" class="attachment-full size-full wp-image-4817" alt="icon-arrow_right_medium-violet-blue.svg">															</div>
				</div>
				<div class="elementor-element elementor-element-3ad198e1 elementor-widget elementor-widget-text-editor" data-id="3ad198e1" data-element_type="widget" data-e-type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Share this article</p>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-1c14ba30" data-id="1c14ba30" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap">
							</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-283c1267 elementor-share-buttons--view-icon-text elementor-share-buttons--skin-gradient elementor-share-buttons--shape-square elementor-grid-0 elementor-share-buttons--color-official elementor-widget elementor-widget-share-buttons" data-id="283c1267" data-element_type="widget" data-e-type="widget" data-widget_type="share-buttons.default">
				<div class="elementor-widget-container">
							<div class="elementor-grid" role="list">
								<div class="elementor-grid-item" role="listitem">
						<div class="elementor-share-btn elementor-share-btn_facebook" role="button" tabindex="0" aria-label="Teilen auf facebook">
															<span class="elementor-share-btn__icon">
								<i class="fab fa-facebook" aria-hidden="true"></i>							</span>
																						<div class="elementor-share-btn__text">
																			<span class="elementor-share-btn__title">
										Facebook									</span>
																	</div>
													</div>
					</div>
									<div class="elementor-grid-item" role="listitem">
						<div class="elementor-share-btn elementor-share-btn_twitter" role="button" tabindex="0" aria-label="Teilen auf twitter">
															<span class="elementor-share-btn__icon">
								<i class="fab fa-twitter" aria-hidden="true"></i>							</span>
																						<div class="elementor-share-btn__text">
																			<span class="elementor-share-btn__title">
										Twitter									</span>
																	</div>
													</div>
					</div>
									<div class="elementor-grid-item" role="listitem">
						<div class="elementor-share-btn elementor-share-btn_linkedin" role="button" tabindex="0" aria-label="Teilen auf linkedin">
															<span class="elementor-share-btn__icon">
								<i class="fab fa-linkedin" aria-hidden="true"></i>							</span>
																						<div class="elementor-share-btn__text">
																			<span class="elementor-share-btn__title">
										LinkedIn									</span>
																	</div>
													</div>
					</div>
									<div class="elementor-grid-item" role="listitem">
						<div class="elementor-share-btn elementor-share-btn_xing" role="button" tabindex="0" aria-label="Teilen auf xing">
															<span class="elementor-share-btn__icon">
								<i class="fab fa-xing" aria-hidden="true"></i>							</span>
																						<div class="elementor-share-btn__text">
																			<span class="elementor-share-btn__title">
										XING									</span>
																	</div>
													</div>
					</div>
									<div class="elementor-grid-item" role="listitem">
						<div class="elementor-share-btn elementor-share-btn_whatsapp" role="button" tabindex="0" aria-label="Teilen auf whatsapp">
															<span class="elementor-share-btn__icon">
								<i class="fab fa-whatsapp" aria-hidden="true"></i>							</span>
																						<div class="elementor-share-btn__text">
																			<span class="elementor-share-btn__title">
										WhatsApp									</span>
																	</div>
													</div>
					</div>
									<div class="elementor-grid-item" role="listitem">
						<div class="elementor-share-btn elementor-share-btn_email" role="button" tabindex="0" aria-label="Teilen auf email">
															<span class="elementor-share-btn__icon">
								<i class="fas fa-envelope" aria-hidden="true"></i>							</span>
																						<div class="elementor-share-btn__text">
																			<span class="elementor-share-btn__title">
										Email									</span>
																	</div>
													</div>
					</div>
						</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-2987c58 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="2987c58" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-bd5a8bc" data-id="bd5a8bc" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-6239759 elementor-widget-divider--view-line elementor-widget elementor-widget-divider" data-id="6239759" data-element_type="widget" data-e-type="widget" data-widget_type="divider.default">
				<div class="elementor-widget-container">
							<div class="elementor-divider">
			<span class="elementor-divider-separator">
						</span>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-0a29aa5 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="0a29aa5" data-element_type="section" data-e-type="section" data-settings="{&quot;_ha_eqh_enable&quot;:false}">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-9dcdf46" data-id="9dcdf46" data-element_type="column" data-e-type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8a9b026 elementor-post-navigation-borders-yes elementor-widget elementor-widget-global elementor-global-8844 elementor-widget-post-navigation" data-id="8a9b026" data-element_type="widget" data-e-type="widget" data-widget_type="post-navigation.default">
				<div class="elementor-widget-container">
							<div class="elementor-post-navigation" role="navigation" aria-label="Beitrag Navigation">
			<div class="elementor-post-navigation__prev elementor-post-navigation__link">
				<a href="https://www.aspicon.de/news/dbvisit-standby-version-9002-new-features/" rel="prev"><span class="post-navigation__arrow-wrapper post-navigation__arrow-prev"><i aria-hidden="true" class="fas fa-angle-left"></i><span class="elementor-screen-only">Zurück</span></span><span class="elementor-post-navigation__link__prev"><span class="post-navigation__prev--label">Voriger Post</span><span class="post-navigation__prev--title">Dbvisit Standby Version 9.0.02 – New Features</span></span></a>			</div>
							<div class="elementor-post-navigation__separator-wrapper">
					<div class="elementor-post-navigation__separator"></div>
				</div>
						<div class="elementor-post-navigation__next elementor-post-navigation__link">
				<a href="https://www.aspicon.de/news/make-backup-compression-great-again/" rel="next"><span class="elementor-post-navigation__link__next"><span class="post-navigation__next--label">Nächster Post</span><span class="post-navigation__next--title">Make backup compression great again</span></span><span class="post-navigation__arrow-wrapper post-navigation__arrow-next"><i aria-hidden="true" class="fas fa-angle-right"></i><span class="elementor-screen-only">Nächster</span></span></a>			</div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>Der Beitrag <a href="https://www.aspicon.de/news/sql-tuning-tipp-analytische-funktionen/">SQL Tuning Tipp: Analytische Funktionen</a> erschien zuerst auf <a href="https://www.aspicon.de">ASPICON</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
