<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Blessing Laweh</title>
    <description>The latest articles on DEV Community by Blessing Laweh (@blessing_laweh_7b0c575e3d).</description>
    <link>https://dev.to/blessing_laweh_7b0c575e3d</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3854102%2Fb2d2055c-7851-4ba2-ad99-5c1b6fc0a8cb.jpg</url>
      <title>DEV Community: Blessing Laweh</title>
      <link>https://dev.to/blessing_laweh_7b0c575e3d</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/blessing_laweh_7b0c575e3d"/>
    <language>en</language>
    <item>
      <title>Beyond Excel: How I Learned to Import Data into Power BI from Multiple Sources</title>
      <dc:creator>Blessing Laweh</dc:creator>
      <pubDate>Fri, 03 Apr 2026 15:22:20 +0000</pubDate>
      <link>https://dev.to/blessing_laweh_7b0c575e3d/beyond-excel-how-i-learned-to-import-data-into-power-bi-from-multiple-sources-1jk9</link>
      <guid>https://dev.to/blessing_laweh_7b0c575e3d/beyond-excel-how-i-learned-to-import-data-into-power-bi-from-multiple-sources-1jk9</guid>
      <description>&lt;p&gt;&lt;em&gt;A practical guide for data analysts who are ready to go further&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Introduction
&lt;/h3&gt;

&lt;p&gt;My First "Wait, You Can Do That?" Moment 😲&lt;br&gt;
When I started learning Power BI, Excel was my comfort zone. It felt familiar. Rows, columns, drag and drop. Simple. But the moment I realized Power BI could pull data from a live database, a website, cloud storage, and even a folder of files all at once, something clicked for me.&lt;br&gt;
My real turning point came during a project I worked on involving the Chinook music dataset, a sample database that models a digital music store, complete with tracks, invoices, customers, and artists. Instead of downloading the data as a flat file, I connected Power BI directly to the MySQL database and wrote custom SQL queries to pull only the data I needed. I wasn't importing an entire table; I was asking the database intelligent questions and visualizing the answers. That project changed how I think about data.&lt;br&gt;
If you've only ever imported data from Excel, this guide is for you. Let's walk through the most important data import methods in Power BI, step-by-step, with real context from someone who's actually used them.&lt;/p&gt;
&lt;h3&gt;
  
  
  What Does "Get Data" Mean in Power BI?
&lt;/h3&gt;

&lt;p&gt;Every import journey in Power BI starts with one button: &lt;strong&gt;Get Data&lt;/strong&gt;. You'll find it on the Home ribbon in Power BI Desktop. Click it, and you're greeted with a list of over 100 connectors from flat files to cloud platforms to databases to APIs.&lt;br&gt;
We'll cover the most commonly used ones:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Excel / CSV&lt;/li&gt;
&lt;li&gt;MySQL&lt;/li&gt;
&lt;li&gt;Web (URL)&lt;/li&gt;
&lt;li&gt;SharePoint / OneDrive&lt;/li&gt;
&lt;li&gt;Folder (bulk file import)&lt;/li&gt;
&lt;li&gt;SON / XML&lt;/li&gt;
&lt;li&gt;Google Sheets (via connector)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcw5ziaafa4whk2z8tmk8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcw5ziaafa4whk2z8tmk8.png" alt=" " width="800" height="492"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h4&gt;
  
  
  1. Importing from Excel or CSV
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: Quick analysis, reports shared by colleagues, static datasets.&lt;br&gt;
This is the most beginner-friendly method and is usually where everyone starts.&lt;br&gt;
&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Power BI Desktop → click Home → Get Data → Excel Workbook (or Text/CSV for .csv files)&lt;/li&gt;
&lt;li&gt;Browse and select your file&lt;/li&gt;
&lt;li&gt;In the Navigator window, check the tables or sheets you want to load&lt;/li&gt;
&lt;li&gt;Click Load (to import as-is) or Transform Data (to clean it in Power Query first)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzlosqnq1jlhsi1jihh5z.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzlosqnq1jlhsi1jihh5z.png" alt=" " width="363" height="530"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcg2z21lxhm721yvd8hpa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcg2z21lxhm721yvd8hpa.png" alt=" " width="800" height="641"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pro tip&lt;/strong&gt;: Always use Transform Data before loading. It lets you rename columns, change data types, and remove blanks before any downstream damage is done.&lt;/p&gt;
&lt;h4&gt;
  
  
  2. Importing from MySQL — My Personal Experience
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: Open-source database projects, developer environments, web application backends.&lt;br&gt;
This is where things got interesting for me personally. For my Chinook dataset project, the data was hosted in a MySQL database rather than a spreadsheet. Instead of exporting everything to Excel (which would have defeated the purpose), I connected Power BI directly to the database and wrote SQL queries to extract exactly what I needed. Think: "Give me all tracks sold in invoices from customers in the USA, grouped by genre."&lt;br&gt;
Here's how to do it:&lt;br&gt;
&lt;strong&gt;Prerequisites&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Install the MySQL Connector/NET driver on your PC (download from MySQL's official site)&lt;/li&gt;
&lt;li&gt;Have your database credentials: host, port (default: 3306), database name, username, and password&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get Data → MySQL database&lt;/li&gt;
&lt;li&gt;Enter your Server (e.g., localhost or a remote IP) and Database name&lt;/li&gt;
&lt;li&gt;Sign in with your credentials&lt;/li&gt;
&lt;li&gt;In the Navigator, either select full tables or click Advanced Options to enter a custom SQL query&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15slyo8shtyihsrpr967.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F15slyo8shtyihsrpr967.png" alt=" " width="330" height="546"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxjxu19jjmgl7ka0an9cd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxjxu19jjmgl7ka0an9cd.png" alt=" " width="641" height="652"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi0ybgkjascmegwn447k6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fi0ybgkjascmegwn447k6.png" alt=" " width="685" height="482"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;My experience writing custom SQL queries:&lt;br&gt;
Instead of loading the entire Invoice table (which had thousands of rows), I wrote a query like:&lt;br&gt;
sql&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SELECT 
    c.Country,
    g.Name AS Genre,
    SUM(il.UnitPrice * il.Quantity) AS TotalRevenue
FROM InvoiceLine il
JOIN Invoice i ON il.InvoiceId = i.InvoiceId
JOIN Customer c ON i.CustomerId = c.CustomerId
JOIN Track t ON il.TrackId = t.TrackId
JOIN Genre g ON t.GenreId = g.GenreId
GROUP BY c.Country, g.Name
ORDER BY TotalRevenue DESC;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Power BI loaded exactly those aggregated results. No noise, no unnecessary columns. From there, I built a visualization showing revenue by genre and country. Clean, purposeful, efficient.&lt;br&gt;
This experience taught me something important: how you import your data shapes the quality of your analysis. Don't just load everything and figure it out later.&lt;/p&gt;

&lt;h4&gt;
  
  
  3. Importing from the Web (URL)
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: Public datasets, live tables on websites, government or open data portals. Power BI can scrape tables directly from web pages, no copy-paste required.&lt;br&gt;
&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get Data → Web&lt;/li&gt;
&lt;li&gt;Paste the URL of the webpage containing the table&lt;/li&gt;
&lt;li&gt;Power BI detects available tables on the page. Select the one you want in the Navigator&lt;/li&gt;
&lt;li&gt;Click Transform Data to clean it up (web data is almost always messy)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2c4yi3jmc60yq2r80rd0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2c4yi3jmc60yq2r80rd0.png" alt=" " width="670" height="645"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy7ui652h59s6cuxp83e4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy7ui652h59s6cuxp83e4.png" alt=" " width="734" height="278"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Real-world use&lt;/strong&gt;: I've seen analysts pull live exchange rate tables, sports league standings, or Wikipedia comparison tables directly into dashboards this way. It's surprisingly powerful for public data.&lt;/p&gt;

&lt;h4&gt;
  
  
  4. Importing from SharePoint / OneDrive
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: Teams using Microsoft 365, shared files in organizational drives, and collaboration environments.&lt;br&gt;
If your organization runs on Microsoft 365, this connector is gold. You can connect to files sitting in SharePoint or OneDrive and have your report refresh automatically whenever the source file is updated.&lt;br&gt;
&lt;strong&gt;Steps (SharePoint Folder)&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get Data → SharePoint Folder (for multiple files) or SharePoint List (for SharePoint list data)&lt;/li&gt;
&lt;li&gt;Enter your SharePoint site URL, e.g., 
&lt;code&gt;https://yourcompany.sharepoint.com/sites/yourteam&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Sign in with your Microsoft 365 credentials&lt;/li&gt;
&lt;li&gt;Browse to select the specific files or lists&lt;/li&gt;
&lt;li&gt;Use Power Query to filter, combine, and shape the data&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs0a4msy2oc713mccnc03.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs0a4msy2oc713mccnc03.png" alt=" " width="655" height="620"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjm3zy1zgijm1wu1cezf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjjm3zy1zgijm1wu1cezf.png" alt=" " width="800" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Steps (OneDrive for Business)&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get Data → Web&lt;/li&gt;
&lt;li&gt;Use the direct OneDrive file link (change &lt;code&gt;?web=1&lt;/code&gt; at the end of the URL to &lt;code&gt;?download=1&lt;/code&gt; for Excel files)&lt;/li&gt;
&lt;li&gt;Navigate and load as you would with a local file&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Pro tip&lt;/strong&gt;: SharePoint + Power BI is a dynamic duo for team dashboards. Your report can auto-refresh from a SharePoint Excel file that your team keeps updated — no manual re-imports needed.&lt;/p&gt;

&lt;h4&gt;
  
  
  5. Importing from a Folder (Bulk File Import)
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: Monthly reports saved as separate files, combining multiple Excel or CSV files with the same structure.&lt;br&gt;
Say you have 12 monthly sales reports, one per file. Power BI can load and combine all of them in one move.&lt;br&gt;
&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get Data → Folder&lt;/li&gt;
&lt;li&gt;Browse to the folder containing your files&lt;/li&gt;
&lt;li&gt;Power BI lists all files detected — click Combine to merge them automatically&lt;/li&gt;
&lt;li&gt;Power Query will stack all the files into one table, adding a source file column so you know where each row came from&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This is one of the most underrated features in Power BI for analysts dealing with recurring reports.&lt;/p&gt;

&lt;h4&gt;
  
  
  6. Importing from JSON or XML
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: API responses, developer exports, system logs.&lt;br&gt;
&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Get Data → JSON or XML&lt;/li&gt;
&lt;li&gt;Select your file&lt;/li&gt;
&lt;li&gt;Power Query will parse the nested structure; you'll need to expand columns to flatten the data into a usable table&lt;/li&gt;
&lt;li&gt;Click Load when ready&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;JSON import can feel a little tricky at first because of nested objects, but Power Query's Expand button does most of the heavy lifting.&lt;/p&gt;

&lt;h4&gt;
  
  
  7. Google Sheets (via Web Connector)
&lt;/h4&gt;

&lt;p&gt;&lt;strong&gt;Best for&lt;/strong&gt;: Analysts who work across Google and Microsoft environments.&lt;br&gt;
Power BI doesn't have a native Google Sheets connector, but there's a clean workaround:&lt;br&gt;
&lt;strong&gt;Steps&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open your Google Sheet → File → Share → Publish to web&lt;/li&gt;
&lt;li&gt;Choose CSV format and copy the published link&lt;/li&gt;
&lt;li&gt;In Power BI: Get Data → Web → paste that link
It loads as a clean CSV — done!&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Conclusion
&lt;/h3&gt;

&lt;p&gt;Looking back at my Chinook project, what made the analysis meaningful wasn't just the visualizations. It was the intention behind the import. Choosing to write SQL queries instead of loading raw tables meant I was thinking like an analyst before I ever touched a chart.&lt;br&gt;
That's the real lesson here: Power BI's power isn't just in what it visualizes, it's in how intelligently you feed it data.&lt;br&gt;
Whether you're pulling from a corporate SQL Server, a teammate's SharePoint folder, a public government website, or a database you built yourself, the import step is where analysis truly begins. Master it, and your dashboards will reflect that precision.&lt;/p&gt;

&lt;p&gt;Start with one new source today. Connect to a database, publish a Google Sheet, or try the Folder connector. Each method you learn expands what you can do with data, and that's what separates a good analyst from a great one.&lt;/p&gt;

</description>
      <category>etl</category>
      <category>powerbi</category>
      <category>dataimportation</category>
      <category>data</category>
    </item>
  </channel>
</rss>
