<?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/"
	xmlns:media="http://search.yahoo.com/mrss/" >

<channel>
	<title>relacyjna baza danych &#8211; SkuteczneRaporty.pl</title>
	<atom:link href="https://skuteczneraporty.pl/tag/relacyjna-baza-danych/feed/" rel="self" type="application/rss+xml" />
	<link>https://skuteczneraporty.pl</link>
	<description>Zautomatyzuj raportowanie w swojej firmie. Praktyczna wiedza dla analityków, kontrolerów i menedżerów.</description>
	<lastBuildDate>Tue, 20 Nov 2018 17:20:09 +0000</lastBuildDate>
	<language>pl-PL</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://skuteczneraporty.pl/wp-content/uploads/2025/09/cropped-skuteczneraporty-FAVICONA-1-32x32.png</url>
	<title>relacyjna baza danych &#8211; SkuteczneRaporty.pl</title>
	<link>https://skuteczneraporty.pl</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding</title>
		<link>https://skuteczneraporty.pl/przekaz-zapytanie-power-query-jako-sql-do-bazy-danych-czyli-query-folding/</link>
					<comments>https://skuteczneraporty.pl/przekaz-zapytanie-power-query-jako-sql-do-bazy-danych-czyli-query-folding/#respond</comments>
		
		<dc:creator><![CDATA[Bartosz Czapiewski]]></dc:creator>
		<pubDate>Tue, 20 Nov 2018 17:20:09 +0000</pubDate>
				<category><![CDATA[Power Query]]></category>
		<category><![CDATA[automatyzacja raportowania]]></category>
		<category><![CDATA[filtrowanie]]></category>
		<category><![CDATA[funkcje Power Query]]></category>
		<category><![CDATA[Import danych]]></category>
		<category><![CDATA[Pobieranie i przekształcanie]]></category>
		<category><![CDATA[Privacy Settings]]></category>
		<category><![CDATA[query folding]]></category>
		<category><![CDATA[relacyjna baza danych]]></category>
		<category><![CDATA[SQL]]></category>
		<guid isPermaLink="false">http://excelbi.pl/?p=8113</guid>

					<description><![CDATA[Power Query pozwala na pobranie danych z wielu różnych źródeł i ich przekształcenie. Niewielu użytkowników PQ ma jednak świadomość, że wykonane w PQ transformacje można przesłać do bazodanowego źródła jak natywne zapytanie SQL. Właśnie ta możliwość, nazywana Query Folding, jest bardzo ważną cechą. Sprawdźmy, jak ona działa i jakie ma ograniczenia. Działanie Query Folding Łącząc [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Power Query pozwala na pobranie danych z wielu różnych źródeł i ich przekształcenie. Niewielu użytkowników PQ ma jednak świadomość, że wykonane w PQ transformacje można przesłać do bazodanowego źródła jak natywne zapytanie SQL. Właśnie ta możliwość, nazywana Query Folding, jest bardzo ważną cechą. Sprawdźmy, jak ona działa i jakie ma ograniczenia.<span id="more-8113"></span></p>
<h1>Działanie Query Folding</h1>
<p>Łącząc się z serwerowym źródłem danych (np. bazą Microsoft SQL Server), Power Query tłumaczy wykonane operacje na język źródła danych. W przypadku wspominanego SQL Servera wygenerowane zostanie zapytanie w języku T-SQL, a kalkulacje zostaną przeprowadzone już w źródle &#8211; przed pobraniem danych przez PQ. Dzięki temu do Query może być pobranych mniej danych, co jest bardzo ważnym aspektem działania Query Folding. Przykładowo, jeśli baza danych zawiera 100 mln rekordów, ale interesują Cię tylko dane z tego roku (5 mln rekordów), Query Folding przyspieszy niesamowicie działanie zapytania, pobierając tylko potrzebną część danych. Operacja ta ma 2 ograniczenia:</p>
<h1>1. Nie każde źródło obsługuje Query Folding</h1>
<p>Mechanizm Query Folding wspierają:</p>
<ul>
<li>relacyjne bazy danych,</li>
<li>modele Analysis Services,</li>
<li>Azure Marketplace,</li>
<li>listy SharePoint,</li>
<li>Exchange,</li>
<li>Active Directory,</li>
<li>HDFS i niektóre operacje na systemie plików.</li>
</ul>
<p>Query Folding nie działa m.in. dla plików Excel i tekstowych &#8211; wszystkie zmiany wykonane są lokalnie na naszym komputerze.</p>
<h1>2. Nie wszystkie wykonane działania mogą być przeniesione na źródło</h1>
<p>W przypadku baz danych dużą część operacji możesz przerzucić na źródło, m.in.:</p>
<ul>
<li>agregacja,</li>
<li>filtracja,</li>
<li>pivot/unpivot,</li>
<li>proste kalkulacje liczbowe,</li>
<li>proste transformacje tekstowe,</li>
<li>złączenia wertykalne (union),</li>
<li>złączenia horyzontalne (join).</li>
</ul>
<p>Szczegółowa dokumentacja w tym zakresie po stronie Power Query jest niestety uboga i potrzebne są własne testy.</p>
<p>Część z wykonywanych w Power Query operacji może być przerzucona do źródła, a część nie. Taka sytuacja nazwa się Partially Query Folding. Ważne jest, że gdy następuje czynność nieprzerzucana na źródło, <strong>wszystkie występujące w sekwencji po niej nie zostaną wykonane na źródle</strong>. Dlatego warto jest zaplanować działania w taki sposób, by jak najwięcej z nich zostało wykonanych na źródle: na początku wykonywane na źródle, na końcu nie.</p>
<h1>Przykład Query Folding dla bazy SQL Server</h1>
<p>Połączę się z tabelą znajdującą się w bazie danych SQL Server. W tym celu uruchamiam zakładkę <em>Dane&gt; Pobieranie i przekszta</em><em>łcanie &gt; Nowe zapytanie &gt; Z bazy danych &gt; Z bazy danych programu SQL Server.</em></p>
<p><img fetchpriority="high" decoding="async" class="aligncenter wp-image-8114 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding1.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 14" width="614" height="196" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding1.jpg 614w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding1-300x96.jpg 300w" sizes="(max-width: 614px) 100vw, 614px" /></p>
<p>Wprowadzam parametry: nazwę serwera oraz bazę danych.</p>
<p><img decoding="async" class="aligncenter wp-image-8115 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding2.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 15" width="611" height="255" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding2.jpg 611w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding2-300x125.jpg 300w" sizes="(max-width: 611px) 100vw, 611px" /></p>
<p>Wybieram tabelę z danymi dotyczącymi budżetu i ładuję ją jako połączenie do Power Query. By pokazać jakie działania będą przekazywane na źródło, dokonam różnych modyfikacji danych.</p>
<p>W pierwszej kolejności przefiltruję kolumnę typ danych i wybiorę z niej jedynie typ budżet.</p>
<p><img decoding="async" class="aligncenter wp-image-8116 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding3.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 16" width="495" height="362" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding3.jpg 495w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding3-300x219.jpg 300w" sizes="(max-width: 495px) 100vw, 495px" /></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8117 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding4.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 17" width="451" height="370" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding4.jpg 451w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding4-300x246.jpg 300w" sizes="(max-width: 451px) 100vw, 451px" /></p>
<p>Następnie grupuję dane według kolumn MPK, Kategorii biznesowej, Konta, Spółki, Typu danych oraz partnera. Polem agregacji będzie Kwota w kPLN.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8118 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding5.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 18" width="614" height="400" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding5.jpg 614w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding5-300x195.jpg 300w" sizes="(max-width: 614px) 100vw, 614px" /></p>
<p>W kolejnym kroku w kolumnie <em>Partner odfiltruj</em><em>ę </em>wartości <em>null.</em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8119 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding6.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 19" width="350" height="282" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding6.jpg 350w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding6-300x242.jpg 300w" sizes="(max-width: 350px) 100vw, 350px" /></p>
<p>W kolumnie <em>Typ danych </em>zmieniam poprzez <em>Prawy przycisk myszy </em>na nazwie kolumny &gt; <em>Przekszta</em><em>łć &gt; Ma</em><em>łe litery.</em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8120 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding7.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 20" width="613" height="321" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding7.jpg 613w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding7-300x157.jpg 300w" sizes="(max-width: 613px) 100vw, 613px" /></p>
<p>Po wykonaniu wszystkich tych operacji widzę listę zastosowanych kroków.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8121 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding8.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 21" width="251" height="326" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding8.jpg 251w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding8-231x300.jpg 231w" sizes="(max-width: 251px) 100vw, 251px" /></p>
<h1>Monitorowanie działania Query Folding</h1>
<p>By przekonać się, które z operacji są przekazane do źródła w Power Query, wystarczy wybrać z listy kroków jeden z nich, wyświetlić menu podręczne. Powinna się na nim znaleźć pozycja <em>Wy</em><em>świetl zapytanie natywne. </em>Jeżeli jest ona aktywna, to wybrany krok oraz wszystkie przed nim są przekazane do źródła (Query Folding działa w całości). Jeżeli jest inaczej, wówczas wybrany krok na pewno nie jest przekazany do źródła i możliwe że wcześniejsze również (by dowiedzieć się który z kroków hamuje przekazanie danych do źródła należy sprawdzić dla nich aktywność opcji <em>Wy</em><em>świetl zapytanie natywne).</em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8122 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding9.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 22" width="767" height="469" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding9.jpg 767w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding9-300x183.jpg 300w" sizes="(max-width: 767px) 100vw, 767px" /></p>
<p>Przykładem operacji, która nie jest przekazywana do źródła to transpozycja. <em>Przekszta</em><em>łć &gt; Tabela &gt;Transponuj. </em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8123 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding10.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 23" width="356" height="207" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding10.jpg 356w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding10-300x174.jpg 300w" sizes="(max-width: 356px) 100vw, 356px" /></p>
<p>Na liście kroków pojawił się nowy <em>Trasponowano tabel</em><em>ę</em>. Jak widać poniżej, opcja <em>Wyświetl zapytanie natywne </em>jest nieaktywna dla tego kroku, więc od tego kroku działanie nie jest przekazywane do źródła.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8124 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding11.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 24" width="282" height="391" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding11.jpg 282w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding11-216x300.jpg 216w" sizes="(max-width: 282px) 100vw, 282px" /></p>
<h1>Kiedy dane nie są przekazywane do źródła?</h1>
<p>Istnieje jeszcze wiele innych sytuacji, w których nie istnieje możliwość przekazania danych do źródła (Query Folding zostaje wyłączone):</p>
<ul>
<li>gdy używamy źródła, które nie obsługuje Query Folding.</li>
<li>użycie funkcji .<em>Buffer() </em>języka M &#8211; funkcja ta powoduje zaczytanie wszystkich danych do pamięci Power Query. Przydaje się, gdy chcemy uniknąć wielokrotnego pobierania danych z bazy SQL, z dysku czy witryny internetowej. Polecenie buffer załaduje dane do pamięci i przestanie składać zapytania do źródła.</li>
<li>użycie własnego polecenia SQL do pozyskania danych z bazy SQL</li>
<li>niektóre z transformacji np. filtrowanie według opcji <em>Ten miesiąc</em> dla kolumny z datą<em>.</em></li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8126 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding13.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 25" width="622" height="433" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding13.jpg 622w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding13-300x209.jpg 300w" sizes="(max-width: 622px) 100vw, 622px" /></p>
<p>Wyświetlenie zapytania natywnego nie jest możliwe</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8127 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding14.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 26" width="606" height="479" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding14.jpg 606w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding14-300x237.jpg 300w" sizes="(max-width: 606px) 100vw, 606px" /></p>
<ul>
<li>ustawienia poziomów prywatności (opisane we wcześniejszym artykule <a href="https://skuteczneraporty.pl/ignoruj-poziom-prywatnosci-prosty-sposob-na-przyspieszenie-power-query/">https://skuteczneraporty.pl/ignoruj-poziom-prywatnosci-prosty-sposob-na-przyspieszenie-power-query/</a>), mają one znaczenie gdy przesyłane są dane wrażliwe pomiędzy źródłami danych.</li>
<li>użycie opcji usunięcia wierszy z błędami: <em>Narz</em><em>ędzia g</em><em>łówne &gt; Zmniejsz wiersze &gt; Usu</em><em>ń b</em><em>łędy.</em></li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-8128 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding15.jpg" alt="Przekaż zapytanie Power Query jako SQL do bazy danych, czyli Query Folding 27" width="575" height="595" srcset="https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding15.jpg 575w, https://skuteczneraporty.pl/wp-content/uploads/2018/11/Query-folding15-290x300.jpg 290w" sizes="(max-width: 575px) 100vw, 575px" /></p>
<ul>
<li>użycie i definiowanie własnych funkcji w Power Query.</li>
</ul>
<h1>Opcja <em>Wyświetl zapytanie natywne </em>wyłączyła się w innej sytuacji?</h1>
<p>Podziel się w komentarzu.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://skuteczneraporty.pl/przekaz-zapytanie-power-query-jako-sql-do-bazy-danych-czyli-query-folding/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Parametry w Power Query dla Excel i Power BI (cz. 2)</title>
		<link>https://skuteczneraporty.pl/parametry-w-power-query-dla-excel-i-power-bi-cz-2/</link>
					<comments>https://skuteczneraporty.pl/parametry-w-power-query-dla-excel-i-power-bi-cz-2/#respond</comments>
		
		<dc:creator><![CDATA[Bartosz Czapiewski]]></dc:creator>
		<pubDate>Wed, 06 Dec 2017 19:03:45 +0000</pubDate>
				<category><![CDATA[Power BI]]></category>
		<category><![CDATA[Power Query]]></category>
		<category><![CDATA[filtrowanie]]></category>
		<category><![CDATA[lista w Power Query]]></category>
		<category><![CDATA[model danych]]></category>
		<category><![CDATA[parametr Power Query]]></category>
		<category><![CDATA[Pobieranie i przekształcanie]]></category>
		<category><![CDATA[relacyjna baza danych]]></category>
		<guid isPermaLink="false">http://excelbi.pl/?p=2452</guid>

					<description><![CDATA[Po wprowadzeniu do parametrów w Power Query oraz Power BI pokażę kilka innych ciekawych zastosowań. Można z nich korzystać jako parametr przy połączeniu z bazą danych, jako element filtrujący kolumnę (i wpływający przez to na dane ładowane do modelu danych), jako filtr kolumn czy wierszy ładowanych do modelu danych. Jeśli znasz jakieś ciekawe zastosowania, podziel [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><a href="https://skuteczneraporty.pl/parametry-w-power-query-dla-excel-i-power-bi-cz-1/">Po wprowadzeniu do parametrów w Power Query oraz Power BI</a> pokażę kilka innych ciekawych zastosowań. Można z nich korzystać jako parametr przy połączeniu z bazą danych, jako element filtrujący kolumnę (i wpływający przez to na dane ładowane do modelu danych), jako filtr kolumn czy wierszy ładowanych do modelu danych. Jeśli znasz jakieś ciekawe zastosowania, podziel się w komentarzu.<span id="more-2452"></span></p>
<h1>Parametr jako połączenie z bazą danych</h1>
<p>Rozwiązanie te może znaleźć zastosowanie gdy różne bazy danych, o tej samej strukturze, ale o innych nazwach czy lokalizacjach, są wykorzystywane do budowy analogicznych raportów. Wówczas by zobaczyć wygląd, już skonstruowanego raportu na innych danych, nie ma konieczności budowy go od nowa, a jedynie zmienić bazę z którą się łączy.</p>
<p><em>Narz</em><em>ędzia g</em><em>łówne &gt; Edytuj zapytania &gt; Edytuj zapytania &gt; Narz</em><em>ędzia g</em><em>łówne &gt; Zarz</em><em>ądzaj parametrami &gt; Nowy parametr </em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2453 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz21.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 51" width="416" height="120" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz21.png 416w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz21-300x87.png 300w" sizes="(max-width: 416px) 100vw, 416px" /></p>
<p>Dodaję dwa parametry, jak na załączonych poniżej screenach: jeden z nich będzie nazwą bazy danych, z którą będę się łączyć, a drugi z nich będzie serwerem na którym ta baza się znajduje. W obu jako typ parametru wybieram: <em>Tekst , </em>sugerowane wartości jako <em>Lista warto</em><em>ści </em>. Wprowadzam po trzy elementy moich list wartości w parametrach. Jako wartość domyślą oraz bieżącą wybieram jedną z wpisanych na liście (przy pierwszym połączeniu właśnie wartości bieżące wskażą źródło danych).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2454 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz22.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 52" width="527" height="578" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz22.png 527w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz22-274x300.png 274w" sizes="(max-width: 527px) 100vw, 527px" /></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2455 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz23.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 53" width="544" height="591" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz23.png 544w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz23-276x300.png 276w" sizes="(max-width: 544px) 100vw, 544px" /></p>
<p>Następnie łączę się z bazą danych poprzez &gt; Narzędzie główne &gt; Nowe źródło &gt; SQL Server &gt; gdzie wybieram po lewej stronie z listy rozwijanej <em>Parametr </em>, ponieważ chcę w tym miejscu wykorzystać utworzony wcześniej parametr <em>ServerName </em>, a poniżej <em>NazwaBazy </em>(jak sama nazwa mówi, by połączyć się z konkretną bazą)<em>. </em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2456 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz24.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 54" width="205" height="119"><img loading="lazy" decoding="async" class="aligncenter wp-image-2457 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz25.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 55" width="566" height="252" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz25.png 566w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz25-300x134.png 300w" sizes="(max-width: 566px) 100vw, 566px" /></p>
<p>Następnie by zmienić bazę na inną, czy też serwer wybieram &gt; <em>Narz</em><em>ędzia g</em><em>łówne &gt; Edytuj zapytania &gt; Edytuj parametry , </em>gdzie mogę zmienić ich bieżącą wartość.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2458 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz26.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 56" width="569" height="207" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz26.png 569w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz26-300x109.png 300w" sizes="(max-width: 569px) 100vw, 569px" /></p>
<h1></h1>
<h1>Parametr jako filtr kolumn w źródle</h1>
<p>Parametr mogę wykorzystać również jako filtr pozwalający na wybór kolumny ze źródła danych. Tworzę parametr w <em>Edytorze zapyta</em><em>ń</em> o nazwie <em>Kolumna </em>, dla którego ustawiam parametry jak na zdjęciu poniżej. W sugerowanych wartościach listy wpisuję nazwy kolumn ze źródła danych, z którym będę się łączyć czyli z Excelem, wybieram wartość domyślną oraz bieżącą &gt; <em>OK &gt; Zamknij i za</em><em>ładuj </em>by wyjść z edytora<em>.</em></p>
<p>&nbsp;</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2459 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz27.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 57" width="526" height="573" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz27.png 526w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz27-275x300.png 275w" sizes="(max-width: 526px) 100vw, 526px" /></p>
<p>Następnie poprzez <em>Narz</em><em>ędzia g</em><em>łówne &gt; Pobierz dane &gt; Excel &gt;</em> wybieram plik<em> &gt; Otw</em><em>órz &gt; </em>wybieram arkusz który chcę zaimportować <em>&gt; Edytuj &gt; </em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2460 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz28.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 58" width="339" height="163" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz28.png 339w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz28-300x144.png 300w" sizes="(max-width: 339px) 100vw, 339px" /></p>
<p>Zaznaczam kolumnę <em>Sprzedawca &gt; prawy przycisk myszy &gt; Usu</em><em>ń inne kolumny. </em>Dzięki czemu w widoku danych powinna być widoczna jedna kolumna.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2461 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz29.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 59" width="555" height="187" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz29.png 555w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz29-300x101.png 300w" sizes="(max-width: 555px) 100vw, 555px" /></p>
<p>Przy pomocy parametru będę wybierać widoczną kolumnę <em>Narz</em><em>ędzia g</em><em>łówne &gt; Zapytanie &gt; Edytor zaawansowany &gt; </em>w miejscu zaznaczonym na niebiesko obecnie widzę nazwę kolumny „Sprzedawca” , czyli tą którą przed chwilą pozostawiłem.  Tym miejscu umieszczam nazwę parametru <em>Kolumna </em>(bez cudzysłowu) &gt; <em>OK.</em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2462 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz210.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 60" width="557" height="241" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz210.png 557w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz210-300x130.png 300w" sizes="(max-width: 557px) 100vw, 557px" /></p>
<p>W zależności od tego jaka wartość parametru jest wybrana jako bieżąca , taka też zostanie zaprezentowana w Edytorze. By zmienić kolumnę należ edytować parametr i wybrać jego inną wartość. (<em>Narz</em><em>ędzia główne &gt; Edytuj zapytania &gt; Edytuj parametry &gt; </em>potwierdzić wprowadzenie zmian na żółtym pasku &gt; <em>Zastosuj zmiany</em>).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2463 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz211.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 61" width="519" height="42" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz211.png 519w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz211-300x24.png 300w" sizes="(max-width: 519px) 100vw, 519px" /></p>
<p>Poniżej zdjęcie gdzie widać, że wartość parametru <em>Kolumna </em>to Sprzedawca, która jest widoczna na raporcie oraz w obszarze pól do wyboru.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2464 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz212.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 62" width="552" height="185" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz212.png 552w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz212-300x101.png 300w" sizes="(max-width: 552px) 100vw, 552px" /></p>
<p>&nbsp;</p>
<h1>Szablon pliku Power BI z parametrem</h1>
<p>Wykorzystując już wcześniej stworzony model w Power BI wraz z parametrami i danymi możemy zapisać go jako <em>szablon Power BI.</em> Czym jest szablon? Jest to model danych, zawierający już połączenia, parametry, definicje raportów, zapytań, ale nie zawierający danych. Szablony służą do szybkiego wdrażania istniejących modeli tzn. tworząc parametry z szablonu, możemy tworzyć pliki/raporty z różnymi konfiguracjami parametru. Korzystamy wówczas z jednej utworzonej struktury, by stworzyć w szybki sposób kolejne.</p>
<p>Mogę go stworzyć w bardzo łatwy sposób <em>Plik &gt; Eksportuj &gt; Szablon us</em><em>ługi Power BI. </em>Przed zapisem mogę dodać jeszcze opis do tworzonego szablonu. Po otwarciu pliku szablonu (rozszerzenie .pbit) program załaduje pusty model i zapyta o wartości parametrów.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2465 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz213.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 63" width="468" height="279" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz213.png 468w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz213-300x179.png 300w" sizes="(max-width: 468px) 100vw, 468px" /></p>
<h1>Tworzenie parametru w postaci listy z zapytania</h1>
<p>Na początku załaduję dane dla roku 2017 oraz dane sprzedawców (odpowiednie Arkusze w pliku Excel „Dane”) , które połączę w model danych, przy pomocy pola <em>ID Sprzedawcy</em>. Power BI tak naprawdę sam odnajduje relacje pomiędzy tabelami, ja mogę jeszcze upewnić się, edytując ją, czy jest poprawna.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2466 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz214.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 64" width="445" height="201" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz214.png 445w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz214-300x136.png 300w" sizes="(max-width: 445px) 100vw, 445px" /></p>
<p>Przechodzę do <em>Edytora zapyta</em><em>ń </em>(<em>Narz</em><em>ędzia g</em><em>łówne &gt; Edytor zapytania</em>). Otwieram zapytanie sprzedawcy, zaznaczam kolumnę <em>Wojew</em><em>ództwo &gt; prawy przycisk myszy &gt; Dodaj jako nowe zapytanie. </em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2467 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz215.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 65" width="546" height="529" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz215.png 546w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz215-300x291.png 300w" sizes="(max-width: 546px) 100vw, 546px" /></p>
<p>W tym momencie w widoku po prawej stronie zobaczę nową listę <em>Wojew</em><em>ództwo.</em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2468 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz216.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 66" width="228" height="130"></p>
<p>W kolumnie znajdują się wszystkie wartości z zapytania Sprzedawcy, a więc nazwy województw powtarzają się. Usuwam duplikaty z listy , zaznaczam kolumnę &gt; Przekształć &gt; usuń duplikaty</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2469 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz217.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 67" width="564" height="167" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz217.png 564w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz217-300x89.png 300w" sizes="(max-width: 564px) 100vw, 564px" /></p>
<p>Następnie dodaję nowy parametr (<em>Narz</em><em>ędzia g</em><em>łówne &gt; Zarz</em><em>ądzaj parametrami &gt; Nowy parametr</em>). Z danymi wprowadzonymi jak poniżej (oznaczam pole <em>Wymagane, </em>ponieważ parametr nie będzie wymagany w moim modelu).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2470 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz218.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 68" width="510" height="566" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz218.png 510w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz218-270x300.png 270w" sizes="(max-width: 510px) 100vw, 510px" /></p>
<p>Przechodzę do zapytania <em>Sprzedawcy </em> i filtruję je po parametrze <em>Woj (Filtry tekstu &gt; R</em><em>ówna si</em><em>ę &gt; Parametr &gt; Woj &gt; OK &gt; Zamknij i zastosuj</em>)</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2471 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz219.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 69" width="553" height="188" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz219.png 553w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz219-300x102.png 300w" sizes="(max-width: 553px) 100vw, 553px" /></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2472 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz220.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 70" width="541" height="200" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz220.png 541w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz220-300x111.png 300w" sizes="(max-width: 541px) 100vw, 541px" /></p>
<p>Następnie wybieram pola: Sprzedawca, Wartość sprzedaży (z zapytania 2017) oraz Województwo (z zapytania Sprzedawcy, ponieważ właśnie to pole wcześniej filtrowałem z użyciem parametru). Następnie w filtrach przechodzę do filtru dla <em>Wojew</em><em>ództwa </em>&gt; wybieram<em> Filtrowanie Zaawansowane &gt; Poka</em><em>ż elementy, je</em><em>śli ich warto</em><em>ść nie jest pusta. </em></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2473 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz221.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 71" width="235" height="350" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz221.png 235w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz221-201x300.png 201w" sizes="(max-width: 235px) 100vw, 235px" /></p>
<p>Dzięki temu zabiegowi w obszarze raportu będą widoczne jedynie dane , które są zgodne z wartością parametru.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2474 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz222.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 72" width="569" height="252" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz222.png 569w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz222-300x133.png 300w" sizes="(max-width: 569px) 100vw, 569px" /></p>
<p><strong>Uwaga!</strong></p>
<p>Należy pamiętać, aby relacje pomiędzy tabelami działały prawidłowo, więc kluczowe jest tu ustalenie typu połączenia pomiędzy filtrującą tabelą/kolumną Województwo, a pozostałymi tabelami (w tabeli Sprzedawcy nazwa województwa może pojawić się wielokrotnie).</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-2475 size-full" src="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz223.png" alt="Parametry w Power Query dla Excel i Power BI (cz. 2) 73" width="564" height="329" srcset="https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz223.png 564w, https://skuteczneraporty.pl/wp-content/uploads/2017/11/Parametry-Power-Query-cz223-300x175.png 300w" sizes="(max-width: 564px) 100vw, 564px" /></p>
<p>&nbsp;</p>
]]></content:encoded>
					
					<wfw:commentRss>https://skuteczneraporty.pl/parametry-w-power-query-dla-excel-i-power-bi-cz-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Czym jest relacyjna baza danych? Jak tworzyć relacje w PowerPivot?</title>
		<link>https://skuteczneraporty.pl/czym-jest-relacyjna-baza-danych-jak-tworzyc-relacje-w-powerpivot/</link>
					<comments>https://skuteczneraporty.pl/czym-jest-relacyjna-baza-danych-jak-tworzyc-relacje-w-powerpivot/#comments</comments>
		
		<dc:creator><![CDATA[Bartosz Czapiewski]]></dc:creator>
		<pubDate>Mon, 25 Aug 2014 17:56:04 +0000</pubDate>
				<category><![CDATA[Power Pivot]]></category>
		<category><![CDATA[Klucz podstawowy]]></category>
		<category><![CDATA[PowerPivot]]></category>
		<category><![CDATA[relacja]]></category>
		<category><![CDATA[relacyjna baza danych]]></category>
		<guid isPermaLink="false">http://powerview.pl/?p=264</guid>

					<description><![CDATA[Relacyjna baza danych to opisany i zorganizowany zbiór tabel połączonych relacjami – związkami między sobą. Ten sposób przechowywania informacji pozwala na uniknięcie redundancji (powtarzania się danych) oraz przeprowadzanie analiz na podstawie wielu tabel.  ]]></description>
										<content:encoded><![CDATA[<p><a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_1.jpg"><img loading="lazy" decoding="async" class=" wp-image-253 alignleft" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_1.jpg" alt="relacyjna baza danych_1" width="150" height="108" /></a> Relacyjna baza danych to opisany i zorganizowany zbiór tabel połączonych relacjami – związkami między sobą. Ten sposób przechowywania informacji pozwala na uniknięcie redundancji (powtarzania się danych) oraz przeprowadzanie analiz na podstawie wielu tabel.   <span id="more-69010"></span> Każda tabela składa się z rekordów (tak nazywamy pojedyncze wiersze). Poszczególne rekordy składają się z pól (komórek), przechowujących jedną daną.</p>
<p>Aby istniała możliwość utworzenia z tabel relacyjnego modelu danych, przynajmniej w jednej z nich musi występować klucz główny (zwany też podstawowym) &#8211;  kolumna służąca do identyfikacji poszczególnych rekordów tabeli. Wartości w kluczu podstawowym muszą być unikalne, aby istniała możliwość przypisania jednego wiersza tabeli do jednej wartości klucza. Zazwyczaj funkcję takiego klucza spełnia numer porządkowy:<a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_2.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-254" style="margin-left: 72px; margin-right: 72px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_2.png" alt="relacyjna baza danych_2" width="605" height="386" srcset="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_2.png 605w, https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_2-300x191.png 300w" sizes="(max-width: 605px) 100vw, 605px" /></a></p>
<p>W powyższym przykładzie jest to tzw. klucz jednopolowy – identyfikacja rekordu odbywa się przy pomocy jednego pola w wierszu. Istnieją także klucze złożone (wielopolowe) – w ich przypadku identyfikacja odbywa się przy pomocy więcej niż jednej kolumny. Unikalne jest zestawienie komórek tworzących klucz w wierszu. Niestety w <i>PowerPivot</i> nie mamy możliwości zastosowania klucza złożonego. Możemy obejść tą kwestię tworząc kolumnę z unikalnymi wartościami na podstawie komórek które mogą tworzyć klucz złożony, np. poprzez proste połączenie występujących tam znaków (o tworzeniu kolumn przeczytasz <a title="Kolumna oraz pole obliczeniowe w PowerPivot" href="https://skuteczneraporty.pl/kolumna-oraz-pole-obliczeniowe-w-powerpivot/">tutaj</a>):</p>
<p><a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_3.png"><img loading="lazy" decoding="async" class="alignnone wp-image-255" style="margin-left: 195px; margin-right: 195px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_3.png" alt="relacyjna baza danych_3" width="360" height="262" /></a></p>
<p>W powyższej tabeli możemy zauważyć, że ani kolumna <i>nr producenta</i>, ani <i>typ produktu</i> nie zawiera unikalnych wartości, jednakże zestawienie wartości w tych dwóch komórkach jest unikalne dla każdego wiersza. Na tej podstawie tworzymy trzecią kolumnę która może spełniać warunek klucza podstawowego. Relację ustanawiamy pomiędzy dwoma tabelami na podstawie wartości klucza podstawowego w jednej tabeli i kolumny w drugiej tabeli zawierającej wartości klucza podstawowego z tabeli pierwszej. Wyróżniamy trzy rodzaje relacji:</p>
<p>&#8211; <b>jeden do jednego – </b>w tego typu relacji jednemu rekordowi z tabeli A odpowiada tylko jeden wiersz z tabeli B. Rodzaj ten występuje stosunkowo rzadko, ponieważ wszystkie informacje przechowywane w ten sposób można zamieścić w jednej tabeli.<b> </b></p>
<p><b>&#8211; jeden do wielu – </b>jednemu rekordowi z tabeli A odpowiada wiele rekordów z tabeli B. Jest to najpowszechniejszy typ relacji.</p>
<p><b>&#8211; wiele do wielu – </b>rekord w tabeli A może mieć wiele dopasowanych wiele wierszy z tabeli B oraz odwrotnie – rekord z tabeli B może mieć dopasowanych wiele wierszy z tabeli A. Taki typ jest możliwy do zdefiniowania tylko poprzez dodanie do modelu trzeciej tabeli (zwanej tabelą łącza), w której będą znajdowały się wartości kluczy podstawowych tabel A oraz B <a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_4.png"><img loading="lazy" decoding="async" class="alignnone wp-image-256" style="margin-left: 125px; margin-right: 125px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_4.png" alt="relacyjna baza danych_4" width="500" height="786" /></a></p>
<p>Możliwość tworzenia relacji pomiędzy tabelami (a tym samym relacyjnej bazy danych) istnieje w programie Microsoft Excel już od dawna. W tym celu należy kliknąć <i>DANE &gt; Relacje &gt; Nowy </i>a następnie ustawić odpowiednie tabele i kolumny w polach <i>Tabela, Pokrewna tabela, Kolumna (obiekt obcy)</i> oraz <i>Pokrewna kolumna (obiekt podstawowy):</i><a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/Relacyjna-baza-danych_5.gif"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-257" style="margin-left: 25px; margin-right: 25px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/Relacyjna-baza-danych_5.gif" alt="Relacyjna baza danych_5" width="700" height="432" /></a></p>
<p>Dzięki dodatkowi <i>PowerPivot </i>możemy stworzyć relacje w sposób nieco prostszy, intuicyjny i bardzo poglądowy. W pierwszej kolejności należy dodać tabele do modelu danych – jeżeli znajdują się one w arkuszach Excela, wystarczy kliknąć wewnątrz nich kursorem zaznaczając dowolną komórkę a następnie wybrać <i>POWERPIVOT</i> &gt;<i> Dodaj do modelu danych:</i> <a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_6.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-258" style="margin-left: 148px; margin-right: 148px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_6.png" alt="relacyjna baza danych_6" width="453" height="377" /></a></p>
<p>O innych sposobach dołączania tabel do modelu danych przeczytasz <span style="text-decoration: underline;"><a title="Import danych do PowerPivot" href="https://skuteczneraporty.pl/import-danych-do-powerpivot/">w tym artykule</a></span>.</p>
<p>Otworzy się okno dodatku <i>PowerPivot</i>, które będzie wyglądać będzie podobnie do tego:</p>
<p><a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_7.png"><img loading="lazy" decoding="async" class="alignnone wp-image-259" style="margin-left: 72px; margin-right: 72px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_7.png" alt="relacyjna baza danych_7" width="605" height="510" /></a></p>
<p>Jeżeli zamiast widoku podobnego do powyższego widzimy tabelę, oznacza to że mamy włączony <i>widok danych</i> zamiast <i>widoku diagramu</i>. Zmieniamy to w zakładce <i>Narzędzia główne &gt; Widok &gt; Widok diagramu:</i> <a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_8.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-260" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_8.png" alt="relacyjna baza danych_8" width="766" height="156" /></a> Do modelu dodajemy także drugą tabelę. Relację tworzymy w bardzo prosty sposób – po prostu klikamy na nazwę kolumny znajdującej się w polu tabeli, po czym przeciągamy ją na nazwę kolumny w drugiej tabeli. Wybieramy oczywiście kolumny w oparciu o które możemy utworzyć relację. Przy tej czynności nie ma znaczenia kierunek przeciągania (taki sam efekt otrzyma się przeciągając nazwę kolumny z tabeli A do B, jak i z B do A): <a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_9.gif"><img loading="lazy" decoding="async" class="alignnone wp-image-261" style="margin-left: 65px; margin-right: 65px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_9.gif" alt="relacyjna baza danych_9" width="620" height="464" /></a></p>
<p>Taki sposób tworzenia relacji jest szczególnie przydatny podczas tworzenia skomplikowanych modeli danych, takich jak poniższy:</p>
<p><a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_10.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-262" style="margin-left: 73px; margin-right: 73px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_10.png" alt="relacyjna baza danych_10" width="604" height="279" /></a></p>
<p>Widok diagramu jest dużo bardziej poglądowy niż tabelaryczne zestawienie wszystkich relacji w Excelu:</p>
<p><a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_11.png"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-263" style="margin-left: 72px; margin-right: 72px;" src="https://skuteczneraporty.pl/wp-content/uploads/2014/08/relacyjna-baza-danych_11.png" alt="relacyjna baza danych_11" width="605" height="346" /></a></p>
<p>Swój pierwszy prosty model danych można stworzyć przy pomocy naszego pliku. Wystarczy go pobrać i utworzyć relację pomiędzy tabelami <i>Kody pocztowe</i> oraz <i>województwa</i> na podstawie kolumn (odpowiednio) <i>woj. </i>oraz <i>województwo.</i> Tworzenie takiego modelu jest podstawową umiejętnością, która pozwoli zagłębić się nam w ciekawy i bardzo praktyczny świat analizy danych oraz raportowania ad-hoc.</p>
<p>Plik z przykładowymi danymi: <a href="https://skuteczneraporty.pl/wp-content/uploads/2014/08/Relacyjna-baza-danych.xlsx">Relacyjna baza danych</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://skuteczneraporty.pl/czym-jest-relacyjna-baza-danych-jak-tworzyc-relacje-w-powerpivot/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
	</channel>
</rss>
