<?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: jayson kibet</title>
    <description>The latest articles on DEV Community by jayson kibet (@jaysonjob).</description>
    <link>https://dev.to/jaysonjob</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%2F3839740%2F773bd8d5-9eec-4246-8d09-df3546bc0127.png</url>
      <title>DEV Community: jayson kibet</title>
      <link>https://dev.to/jaysonjob</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jaysonjob"/>
    <language>en</language>
    <item>
      <title>SQL joins Explained</title>
      <dc:creator>jayson kibet</dc:creator>
      <pubDate>Thu, 16 Apr 2026 15:17:45 +0000</pubDate>
      <link>https://dev.to/jaysonjob/sql-joins-explained-317</link>
      <guid>https://dev.to/jaysonjob/sql-joins-explained-317</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;SQL JOINs are one of those concepts that seem simple in theory but confusing in practice.At first,SQL joins really confused me and didn't make any sense because i had the data i needed but in different tables.Putting them together actually felt harder than I thought.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.Inner join
&lt;/h3&gt;

&lt;p&gt;This join returns only the rows that match in both tables that you want to join.&lt;br&gt;
The syntax is:select column&lt;br&gt;
              from t1&lt;br&gt;
            inner join t2&lt;br&gt;
            on t1.column=t2.column;&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%2Flt1d8g9b53acan6yvjpq.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%2Flt1d8g9b53acan6yvjpq.png" alt=" " width="396" height="125"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2.left join
&lt;/h3&gt;

&lt;p&gt;LEFT JOIN returns all rows from the left table, plus any matching rows from the right.When there's no match,the result will be recorded as NULL.The order of the table in this join matters&lt;br&gt;
the syntax is:select column&lt;br&gt;
              from t1&lt;br&gt;
            left join t2&lt;br&gt;
           on t1.column=t2.column&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%2Fg2y460ip1ua1heywfdtr.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%2Fg2y460ip1ua1heywfdtr.png" alt=" " width="502" height="107"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3.Right join
&lt;/h3&gt;

&lt;p&gt;This is actually the opposite of the left join.It selects all rows from the right and matches them on the left.&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%2Fz1cm1wqtadxlr9cu7ebh.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%2Fz1cm1wqtadxlr9cu7ebh.png" alt=" " width="490" height="115"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4.full outer join
&lt;/h3&gt;

&lt;p&gt;A Full outer join returns all rows from both tables.when it doesn't match, the missing side shows NULL.&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%2Fu5a174ut4dmbpy5hkxoo.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%2Fu5a174ut4dmbpy5hkxoo.png" alt=" " width="478" height="138"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  5.self join
&lt;/h3&gt;

&lt;p&gt;This is simply a table joining itself.Often when rows reference other rows in the same table.&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%2Fdz5cn3lbg4a4jar0k6co.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%2Fdz5cn3lbg4a4jar0k6co.png" alt=" " width="447" height="134"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Note:Always remember to put the ON function after the join
&lt;/h4&gt;

&lt;h2&gt;
  
  
  Window functions and Group by function
&lt;/h2&gt;

&lt;p&gt;I once knew group by is a very powerful tool and could summarize my data in seconds and get results quickly until i came across the window functions and suddenly everything became a bit difficult.They almost did the same job but in a different way.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.Group  by
&lt;/h3&gt;

&lt;p&gt;This command is used to combine rows into groups and return one result as per a group.You can group your results either by gender(female or male) or by age or any way you want your data to be presented.&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%2Fh94taabta4j063uiwdjp.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%2Fh94taabta4j063uiwdjp.png" alt=" " width="438" height="96"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  Note:Do not include a where clause together with a group by function perhaps you can use a having clause to be more specific with your group by clause.
&lt;/h4&gt;

&lt;h3&gt;
  
  
  Window functions.
&lt;/h3&gt;

&lt;p&gt;Window functions allow you to perform calculations across a two or more rows without removing any rows&lt;/p&gt;

&lt;h4&gt;
  
  
  Note:a.PARTITION BY divides the data into groups using PARTITION BY and ORDER BY specifies the order of rows within each group using ORDER BY.
&lt;/h4&gt;

&lt;h4&gt;
  
  
  1.sum()
&lt;/h4&gt;

&lt;p&gt;In simple terms,the sum command creates a running total.Each row adds its value to the total so far.&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%2Fcw77i56wp2f1vnc6u4dl.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%2Fcw77i56wp2f1vnc6u4dl.png" alt=" " width="800" height="203"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  2.avg()
&lt;/h4&gt;

&lt;p&gt;Calculates the average value within a window.&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%2Fyo0w9jacdxeifz7njrg5.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%2Fyo0w9jacdxeifz7njrg5.png" alt=" " width="800" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  3.Row_number()
&lt;/h4&gt;

&lt;p&gt;This asigns a sequential number to each row.Every row gets a unique value.&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%2Foqfv47z5s023xycjxhj7.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%2Foqfv47z5s023xycjxhj7.png" alt=" " width="645" height="177"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  4.Rank() and Dense rank()
&lt;/h4&gt;

&lt;p&gt;when two rows have the same value RANK() and DENSE_RANK() both gives the same rank but they differ in what comes next&lt;br&gt;
RANK() - It skips numbers after a tie , handles ties eg.1,2,3,3,5&lt;br&gt;
DENSE_RANK() - It does not skip.However,the next rank after two tied at 2 is 3 eg.1,2,3,3,4,5.It doesnt leaves gaps in ranking&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%2Fgotax5wfkzajvwfekh7e.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%2Fgotax5wfkzajvwfekh7e.png" alt=" " width="800" height="215"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Functions every beginner should know
&lt;/h2&gt;

&lt;p&gt;As a data analyst,you should go beyond just analyzing data and mastering basic commands like where function,group by and order by and so on.To become extraordinary,you need some powerful functions to help you analyze data with ease.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.Lag()
&lt;/h3&gt;

&lt;p&gt;This lets you access data from the previous row without writing complex queries.It looks at the previous row's value.&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%2F9v9hnpy83c642clgdak3.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%2F9v9hnpy83c642clgdak3.png" alt=" " width="800" height="159"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2.Lead()
&lt;/h3&gt;

&lt;p&gt;This is the opposite of the lag function.It looks at the next row's value&lt;br&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%2Ffx9isme65b2kqsby58my.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%2Ffx9isme65b2kqsby58my.png" alt=" " width="800" height="157"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  NOTE:The Lag and Lead is perfect for making comparison over time either students performance in two exams or employees salary.
&lt;/h4&gt;

&lt;h3&gt;
  
  
  3.NTILE
&lt;/h3&gt;

&lt;p&gt;This divides rows into equal groups(buckets)&lt;br&gt;
It's useful for percentages,quartiles and even splitting students into perfomance bands according to their exams results.&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%2F4b3dfem7sk31pogoaoki.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%2F4b3dfem7sk31pogoaoki.png" alt=" " width="800" height="183"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It gives priority to the 1st groups.&lt;/p&gt;

&lt;h3&gt;
  
  
  4.substring
&lt;/h3&gt;

&lt;p&gt;It selects the number of characters in a certain column.It helps in data cleaning and formating.&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%2F660uz2uwmqdrldwpvh2a.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%2F660uz2uwmqdrldwpvh2a.png" alt=" " width="800" height="129"&gt;&lt;/a&gt;&lt;br&gt;
It wll select only the first 3 letters.&lt;/p&gt;

&lt;h3&gt;
  
  
  5.Date_part
&lt;/h3&gt;

&lt;p&gt;This functions extracts either the year,month or day from a date&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%2F0i1w7cb8yihkel9lto11.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%2F0i1w7cb8yihkel9lto11.png" alt=" " width="766" height="174"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  6.UNION
&lt;/h3&gt;

&lt;p&gt;Despite UNION not being a function,i feel every beginner should master it.&lt;br&gt;
It combines results from two queries and it also removes duplicates as a bonus.&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%2Fujvmr2prs225buot2e5d.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%2Fujvmr2prs225buot2e5d.png" alt=" " width="575" height="113"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  common mistakes to avoid
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1.running a delete or update statement
&lt;/h3&gt;

&lt;p&gt;Running the delete or update statement can wipe your table at a glance.Always specify the row you want to update or delete by introducing the where clause.&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%2F15oni7b06wcmq1nexw0g.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%2F15oni7b06wcmq1nexw0g.png" alt=" " width="380" height="64"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2.Having and where clause
&lt;/h3&gt;

&lt;p&gt;The where clause filters rows before the grouping happens.&lt;br&gt;
Having filters after the aggregations.&lt;br&gt;
Also,where clause does not go together with group by function.&lt;br&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%2F564hqb1ro7o1eay7r6mk.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%2F564hqb1ro7o1eay7r6mk.png" alt=" " width="598" height="145"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3.Null values
&lt;/h3&gt;

&lt;p&gt;Null is not the same as 0(zero).&lt;br&gt;
Ignoring them leads to empty results.Always use IS NULL or IS NOT NULL.Don't use the =(equal) sign&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%2F5tnqmows5zp0kpsk2qr9.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%2F5tnqmows5zp0kpsk2qr9.png" alt=" " width="396" height="61"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4.Joins
&lt;/h3&gt;

&lt;p&gt;When you run a join query,always include the word ON.This is where you want to join your table with common columns.&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%2Fmvfy1luc2l9stpze0eyg.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%2Fmvfy1luc2l9stpze0eyg.png" alt=" " width="605" height="128"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  conclusion
&lt;/h2&gt;

&lt;p&gt;We all learn by making mistakes.Every wrong query,every error message and every unexpected result is part of the process.Fixing them is what sharpens your thinking.The goal isn’t to write perfect queries from the start but understanding the structure of the queries that give the right answer to the question.&lt;/p&gt;

</description>
      <category>sql</category>
      <category>analytics</category>
    </item>
    <item>
      <title>What really is DDL and DML and their comparision</title>
      <dc:creator>jayson kibet</dc:creator>
      <pubDate>Sun, 12 Apr 2026 17:23:34 +0000</pubDate>
      <link>https://dev.to/jaysonjob/what-really-is-ddl-and-dml-and-their-comparision-1g7k</link>
      <guid>https://dev.to/jaysonjob/what-really-is-ddl-and-dml-and-their-comparision-1g7k</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;About three weeks ago,I jumped into learning SQL.I thought it's all about writing queries and getting results by running them and thats all.Yes i had a point but when i went deeper in learning SQL,I realized there’s a clear split in how SQL actually works.DDL (Data Definition Language) and  DML (Data Manipulation Language).&lt;/p&gt;

&lt;h2&gt;
  
  
  DDL(Data Definition Language)
&lt;/h2&gt;

&lt;p&gt;This is what you use to create and define your database.It deals with the structure of your table.When you run them,the table either exists or it doesn't.You can think of it as an empty house(empty rooms just walls)&lt;/p&gt;

&lt;h2&gt;
  
  
  DML(Data Manipulation Language)
&lt;/h2&gt;

&lt;p&gt;This actually works with the data inside your table.You can think of it as the staff inside your house.&lt;/p&gt;

&lt;p&gt;NOTE:DDL deals with the structure while DML deals with the data.&lt;/p&gt;

&lt;h2&gt;
  
  
  How I used CREATE, INSERT, UPDATE, and DELETE
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1.Create
&lt;/h3&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%2Fvylllzbnsg9fwjsxb73f.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%2Fvylllzbnsg9fwjsxb73f.png" alt=" " width="548" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This command creates the table of your title choice&lt;/p&gt;

&lt;h3&gt;
  
  
  2.Insert
&lt;/h3&gt;

&lt;p&gt;This command allows you to fill your table by inserting data into the table you created following the data type strictly.&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%2Fxsuxba459w1tlt4kbgdw.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%2Fxsuxba459w1tlt4kbgdw.png" alt=" " width="771" height="345"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The data type should corespond with the data you put in the table you created.&lt;/p&gt;

&lt;h3&gt;
  
  
  3.Update
&lt;/h3&gt;

&lt;p&gt;The update command allows you to make changes in your table for instance if you made a mistake and you need to make immediate changes.&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%2Fbiqongugc5qbtts9e2g0.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%2Fbiqongugc5qbtts9e2g0.png" alt=" " width="336" height="125"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  4.Delete/drop
&lt;/h3&gt;

&lt;p&gt;The 'delete' command allows you to eliminate a specific rows of your choice while alter messes with the columns.&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%2F8brvq6jq17siz1z7465v.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%2F8brvq6jq17siz1z7465v.png" alt=" " width="425" height="71"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Filtering and Where
&lt;/h2&gt;

&lt;p&gt;The where clause is actually one of the most important commands.Its actually my 'best friend'since I interact with it a lot.Without this you cannot execute the delete and update command since it will affect every row.&lt;/p&gt;

&lt;h3&gt;
  
  
  1.=(equals to)
&lt;/h3&gt;

&lt;p&gt;=(equals to) only filters the data corresponding to your where clause.&lt;br&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%2Fhcft09kbm6j8itxfclai.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%2Fhcft09kbm6j8itxfclai.png" alt=" " width="387" height="93"&gt;&lt;/a&gt;&lt;br&gt;
It will only highlight the form 4 students.&lt;/p&gt;

&lt;h3&gt;
  
  
  2.&amp;gt;=(greater than or equals to)
&lt;/h3&gt;

&lt;p&gt;This only selects the data that is above or equal the highlighted command in the where clause.&lt;br&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%2F814ccxf6mirgr1k2crpv.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%2F814ccxf6mirgr1k2crpv.png" alt=" " width="358" height="117"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  3.Like
&lt;/h3&gt;

&lt;p&gt;It is done by adding a percentage before of after a character to give a hint that there is some characters but it's just not given.&lt;br&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%2F1pkzatphntfiqvp7mpdq.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%2F1pkzatphntfiqvp7mpdq.png" alt=" " width="444" height="141"&gt;&lt;/a&gt;&lt;br&gt;
subjects like computer studies will be highlighted.&lt;/p&gt;

&lt;h3&gt;
  
  
  4.Between
&lt;/h3&gt;

&lt;p&gt;This gives the data that is in the range that you highlighted&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%2Fyszw4swnl9i9zxuzxjn8.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%2Fyszw4swnl9i9zxuzxjn8.png" alt=" " width="415" height="128"&gt;&lt;/a&gt;&lt;br&gt;
Marks like 70s will be included.&lt;/p&gt;

&lt;h3&gt;
  
  
  5.In
&lt;/h3&gt;

&lt;p&gt;This matches the list.After the function'In',it is then followed by brackets and data separated by a comma in between them inside the bracket&lt;br&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%2Fgi6qlo5o7v2ty6kjsbow.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%2Fgi6qlo5o7v2ty6kjsbow.png" alt=" " width="482" height="120"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Case when
&lt;/h2&gt;

&lt;p&gt;This is a condition inside a query.It's almost similar to the 'if' statement in Excel and power BI.I didn't expect myself to like this as much as i do at the moment.&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%2Fin4ba7zldxde0dlrbxf8.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%2Fin4ba7zldxde0dlrbxf8.png" alt=" " width="428" height="259"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What i found challenging while attempting my assignment
&lt;/h2&gt;

&lt;p&gt;In a spreadsheet, you click a cell and type. In SQL,you describe exactly what you want to change and under what conditions. The approach feels rigid at first, but it is actually more precise. You cannot accidentally drag a formula into the wrong column.&lt;br&gt;
Also while doing the assignment,I ran an UPDATE without a WHERE clause.Every data in the table immediately became 'Unknown'.That mistake reinforced two habits: always try to always write the WHERE clause first before anything else and always work inside a transaction when experimenting.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;The past few weeks taught me that SQL isn't about memorizing commands.First,you set up the structure with DDL,you then work inside it with DML.Think of it like building a house from scratch.At one point I ran an UPDATE without a WHERE clause and watched every single row change at once.That really got me frustrated.Now 'WHERE' and 'CASE WHEN' don't feel like random syntax anymore,they feel like tools I actually want to use.&lt;br&gt;
If you're just starting out,always remember to write your conditions before your changes.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>sql</category>
    </item>
    <item>
      <title>How to publish a Power BI report and embed it in a website.</title>
      <dc:creator>jayson kibet</dc:creator>
      <pubDate>Sun, 05 Apr 2026 18:11:41 +0000</pubDate>
      <link>https://dev.to/jaysonjob/how-to-publish-a-power-bi-report-and-embed-it-in-a-website-lg6</link>
      <guid>https://dev.to/jaysonjob/how-to-publish-a-power-bi-report-and-embed-it-in-a-website-lg6</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Power BI is a powerful intelligence tool that enables users to transform raw data and generate insights and interactive dashboards and reports.One of its most useful features is the ability to publish reports to the Power BI Service and embed them into websites so that your work can reach your boss or client or add into your potfolio website.&lt;br&gt;
This guide walks through the full process step by step: creating a workspace, publishing a report, generating embed code, and embedding the report into a website.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Create a Workspace in Power BI Service
&lt;/h2&gt;

&lt;p&gt;Before you can share anything,you need to put it somewhere.That space is called a workspace in power BI.In simple terms,a worksapce is like your report's new home.&lt;br&gt;
It's designed mostly for power BI reports,dashboards and datasets.Each workspace can have its own set of people with different permission levels.&lt;br&gt;
How to create: &lt;br&gt;
1.open your web browser and go to app.powerbi.com. Sign in with your Microsoft account either work or school account.&lt;br&gt;
2.Once you're logged in, look at the left-hand menu. You'll see icons for Home, Browse, Workspaces. Click Workspaces.At the bottom of the workspace list, you'll see a button that says + New workspace. Click it.&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%2F8iac8dkiqy8je1pbefij.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%2F8iac8dkiqy8je1pbefij.png" alt=" " width="800" height="252"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A window will pop up asking for some details.&lt;br&gt;
  .NAME:Put something clear and simple like"Electronics Sales Dashboard"&lt;br&gt;
   DESCRIPTION:Write something like "Monthly sales data for the electronics team"though its optional.&lt;br&gt;
   ADVANCED OPTION: This is where you set who can access and what license type to use&lt;br&gt;
3.Click Apply.&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%2F9zf5icl74uapclke3e4l.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%2F9zf5icl74uapclke3e4l.png" alt=" " width="800" height="750"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The Four Workspace Roles &lt;br&gt;
Power BI gives you four different levels of access.&lt;br&gt;
Admin-He does Everything. Delete the workspace, add or remove people, change settings, upload reports — total control&lt;br&gt;
Member-Edit and share content, but cannot add other members or delete the workspace&lt;br&gt;
Contributor-Upload and edit reports, but cannot manage permissions or share with new people&lt;br&gt;
Viewer  Can only look at reports. No editing, no uploading, no sharing&lt;/p&gt;

&lt;h2&gt;
  
  
  step2. Uploading and Publishing Your Report
&lt;/h2&gt;

&lt;p&gt;Once your workspace is ready, it's time to get your report from Power BI Desktop into the cloud.&lt;br&gt;
Publishing from Power BI Desktop&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open your finished report in Power BI Desktop.
2.Save your file (Ctrl+S)
3.Click the Publish button on the Home ribbon at the top.
4.If asked, sign in with your Microsoft account.
5.A small window will pop up showing your available workspaces. Pick the one you just created.
6.Click Select.&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%2Fq9ab2rkv3yso8ymuvfq2.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%2Fq9ab2rkv3yso8ymuvfq2.png" alt=" " width="800" height="447"&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%2Fdwg9fi59nf58jjaj71zm.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%2Fdwg9fi59nf58jjaj71zm.png" alt=" " width="800" height="484"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;7.Wait a moment while Power BI uploads and checks your file. This usually takes afew seconds close to a minutes, depending on how big and complex your report is.&lt;br&gt;
8.When it's done, you'll see a success message. Click the link to open your report in Power BI Service (the cloud version).&lt;/p&gt;

&lt;h3&gt;
  
  
  Double-Check That Everything Worked
&lt;/h3&gt;

&lt;p&gt;After publishing, go back to Power BI Service and click on your workspace. You should see three things:&lt;br&gt;
     The Report (your actual visuals and pages)&lt;br&gt;
     The Dataset (your data model)&lt;br&gt;
     Maybe a Dashboard if you made one&lt;/p&gt;

&lt;p&gt;Click on the report name to open it. Click through every page. Test your slicers, your drill-throughs, and any custom visuals. Sometimes things look perfect in Desktop but act weird in the cloud. &lt;/p&gt;

&lt;h2&gt;
  
  
  step3.Creating the embed code
&lt;/h2&gt;

&lt;p&gt;Power BI gives you three different ways to embed a report. Picking the wrong one can either break things or expose private data.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Publish to Web-Anyone with the link and it's Best for Personal blogs, public portfolios and marketing demos&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Secure Embed-Only people with Power BI accounts you approve   Pro for each viewer and it's best for Internal company portals, private team sites&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Power BI Embedded-Any app user (no Power BI account needed)   Azure subscription (paid) best for Customer-facing products, SaaS apps&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Option A: Publish to Web (Public)
&lt;/h2&gt;

&lt;p&gt;This is the easiest method and perfect for portfolio pieces or blog posts. But be aware that anyone on the internet can access and view your report. Never use this for customer data, salaries, or anything private.&lt;br&gt;
Here's how to do it:&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%2Fa26yjbkukxeexyc3f925.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%2Fa26yjbkukxeexyc3f925.png" alt=" " width="672" height="406"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;1.Open your published report in Power BI Service.&lt;br&gt;
   2.In the top menu, click File → Embed report → Publish to web (public).&lt;br&gt;
   3.Read the warning. Seriously. It's telling you that this report will be public and search engines can index it. Don't  click past this without thinking.&lt;br&gt;
    4.Click Create embed code.&lt;br&gt;
    5.Click Publish to confirm.&lt;br&gt;
    6.You'll see two things: a Link (direct URL) and an HTML &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%2F7uzp1s6ipc4fcuk42e5q.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%2F7uzp1s6ipc4fcuk42e5q.png" alt=" " width="715" height="171"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That weird long string in the src part is your report's unique ID.&lt;/p&gt;

&lt;h2&gt;
  
  
  Option B: Secure Embed (For Internal Use)
&lt;/h2&gt;

&lt;p&gt;This is best and highly recomended for private and sensitive data like employee salary and sales figures.&lt;br&gt;
This is how you do it:&lt;br&gt;
    1.Open your report in Power BI Service.&lt;br&gt;
    2.Click File → Embed report → Website or portal.&lt;br&gt;
    3.Copy the URL and embed code provided.&lt;br&gt;
    4.Anyone who tries to view the embedded report will have to sign in with their Microsoft account. And they only see it if you've given them permission in the workspace.&lt;/p&gt;

&lt;h2&gt;
  
  
  Option C:Power BI Embedded (For Commercial Products)
&lt;/h2&gt;

&lt;p&gt;This one is for developers building apps that show reports to customers. Think of a SaaS product that includes analytics for thousands of none users who have Power BI licenses. This requires Azure setup, API knowledge, and a paid subscription. If you're just trying to put a report on your blog or team site, ignore this option.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3:Embedding the Report on a Website
&lt;/h2&gt;

&lt;p&gt;You've got your embed code. Now let's put it somewhere people can actually see it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Method 1: Simple HTML Page
&lt;/h3&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%2Fwjv61gxvr585hlzs7e4v.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%2Fwjv61gxvr585hlzs7e4v.png" alt=" " width="594" height="541"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2.Replace YOUR_REPORT_ID_HERE with the actual URL from your embed code&lt;br&gt;
3.save the file as dashboard.html&lt;br&gt;
4.Double-click the file to open it in your browser. You should see your live report on the page.&lt;/p&gt;

&lt;h3&gt;
  
  
  Method 2: WordPress
&lt;/h3&gt;

&lt;p&gt;1.Add a Custom HTML block to your page or post.&lt;br&gt;
2.Paste your iframe code inside.&lt;br&gt;
3.Publish or update the page.&lt;/p&gt;

&lt;h3&gt;
  
  
  Method 3: Medium or Dev.to
&lt;/h3&gt;

&lt;p&gt;These platforms don't allow raw iframe codes for security reasons. Your best bet is to host the HTML page and then share the link in your story.&lt;/p&gt;

&lt;h2&gt;
  
  
  Troubleshooting
&lt;/h2&gt;

&lt;p&gt;When the Publish button is grayed out and won't let you click it,it means you're probably not signed in. Go to File → Sign in and log into your Microsoft account.&lt;br&gt;
When you get an error,You probablly  don't have permission to publish to this workspace.This is either the workspace admin hasn't given you access and you should reach out to them to add you as a Member or Contributor.&lt;br&gt;
When the embedded report shows a blank screen or says "Access denied."For public embeds, your Power BI admin might have disabled "Publish to web" in the tenant settings.You should ask them to turn it on or for secure embeds, make sure the viewer has been added to the workspace.&lt;br&gt;
When your report shows old data,it means your dataset probably isn't refreshing automatically. Check that scheduled refresh if it is turned on and that your data source credentials haven't expired. Expired passwords is the main reason reports stops updating.&lt;/p&gt;

&lt;h2&gt;
  
  
  Note:
&lt;/h2&gt;

&lt;p&gt;Security should be the first priority always.&lt;br&gt;
Do NOT use "Publish to web" for anything with personal information, customer data, financial details, or trade secrets. Once it's public, it's public forever. Google can find it. Your competitors can find it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;Publishing a Power BI report takes your work from a file stuck on your computer to a live tool that anyone can access. The whole process — workspace, upload, embed code, website takes few minutes once you understand the steps.&lt;br&gt;
The real skill is knowing which embedding method fits your situation and keeping your data safe. Publish your report out and let your insights do the work.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>datascience</category>
    </item>
    <item>
      <title>Understanding Data modeling in power bi,Joins,relationships and schemas explained.</title>
      <dc:creator>jayson kibet</dc:creator>
      <pubDate>Sun, 29 Mar 2026 18:38:47 +0000</pubDate>
      <link>https://dev.to/jaysonjob/understanding-data-modeling-in-power-bijoinsrelationships-and-schemas-explained-k48</link>
      <guid>https://dev.to/jaysonjob/understanding-data-modeling-in-power-bijoinsrelationships-and-schemas-explained-k48</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;When I first heard about Power BI, I thought it's all about making charts and dashboards. I came to realize even the most beautiful visuals can produce wrong numbers when it's not well organised and most beginners start questioning themselves why their totals are not adding up correctly.&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Modeling
&lt;/h2&gt;

&lt;p&gt;Data modeling is organising and structuring your data so that it can be efficient and accurate for Power BI to easily analyse it.&lt;br&gt;
In simple terms, modeling is what separates a report that looks good from what is actually correct. You can think of it like a building plan. You cannot skip the plan and expect the building to go well. If you skip data modeling, you will get inaccurate report.&lt;/p&gt;

&lt;h2&gt;
  
  
  Joins
&lt;/h2&gt;

&lt;p&gt;Joins in Power BI combines data from multiple tables based on related columns. It uses relationships and DAX for joining data unlike SQL where you write join statements.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Inner Join
&lt;/h3&gt;

&lt;p&gt;An inner join returns only the rows where both tables have a matching value and leaves out the ones that don't have a match. This join gives you a clean and trimmed result with no missing pieces on either side.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Outer Join
&lt;/h3&gt;

&lt;p&gt;A full outer join returns all rows from both tables. Where there is a match, the columns are filled in from both sides. Where there is no match on either side, you get nulls.&lt;br&gt;
You can only use it when you need a complete picture of both datasets.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Left Join
&lt;/h3&gt;

&lt;p&gt;A left join returns all rows from the first table and the matching rows from the second table. If a row in the left table has no match in the right table, the right-side columns come back as null. It acts as 'don't leave anyone behind.'&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Right Join
&lt;/h3&gt;

&lt;p&gt;A right join is the exact opposite of the left join. It returns all rows from the right table and the matching rows from the left table. Unmatched rows on the left side come back as null.&lt;/p&gt;

&lt;h3&gt;
  
  
  5. Right Anti Join
&lt;/h3&gt;

&lt;p&gt;This join keeps only the rows from the right table that don't match anything on the left. Commonly used to find new data on the second table that don't match with the main dataset.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Left Anti Join
&lt;/h3&gt;

&lt;p&gt;A left anti join returns only the rows from the left table that have no matching rows in the right table. Used to find the 'what's missing.'&lt;/p&gt;

&lt;h2&gt;
  
  
  Power BI Relationships
&lt;/h2&gt;

&lt;p&gt;Power BI understands how tables get connected.When you connect two tables in Power BI, that connection is called a relationship.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Cardinality
&lt;/h3&gt;

&lt;p&gt;Cardinality describes how many rows on each table can merge. It helps you understand the structure of your data and how to join the tables perfectly.&lt;/p&gt;

&lt;h4&gt;
  
  
  a. 1:1
&lt;/h4&gt;

&lt;p&gt;This matches one-to-one whereby each row in table A matches exactly one row in table B.&lt;/p&gt;

&lt;h4&gt;
  
  
  b. 1:M
&lt;/h4&gt;

&lt;p&gt;In this case, one row in table A matches many rows in table B. They are most efficient and predictable in Power BI and I recommend to always aim for 1:M.&lt;/p&gt;

&lt;h4&gt;
  
  
  c. M:M
&lt;/h4&gt;

&lt;p&gt;Multiple rows in table A can match multiple rows in table B.&lt;br&gt;
This relationship can cause unexpected filter behaviour, double counting, and you can resolve it by introducing a bridge table.&lt;/p&gt;

&lt;h4&gt;
  
  
  d. M:1
&lt;/h4&gt;

&lt;p&gt;This relationship, many rows in table A matches to 1 row in table B.&lt;/p&gt;

&lt;h3&gt;
  
  
  Active vs Inactive
&lt;/h3&gt;

&lt;p&gt;Tables can be connected in different ways when building data models.&lt;br&gt;
An active relationship is always the default and always on between two tables and appears as a solid line in model view. Every DAX and every visual in your report uses the active relationship automatically.&lt;br&gt;
Inactive relationship is a stand-by connection ignored by default. You can create it only when you need a second or third path between two tables.&lt;/p&gt;

&lt;h3&gt;
  
  
  Schemas
&lt;/h3&gt;

&lt;p&gt;Schemas simply is the structure of your data model. It shows how tables are arranged and connected to each other. You can think of it like a map to your data.&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Star Schemas
&lt;/h4&gt;

&lt;p&gt;This is the recommended standard for Power BI.&lt;br&gt;
It takes one flat table and splits it into separate, clean tables, one fact table in the middle surrounded by dimension tables hence resembling a star.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. Snowflake Schema
&lt;/h4&gt;

&lt;p&gt;This is basically like a star schema where some of the dimension tables are broken down further into smaller tables.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;I used to create dashboards that had weird numbers and calculations that I couldn't even explain. Data modeling made Power BI make sense to me and once the model was right, everything started to fall in place. Once you understand joins, relationships and schemas, your reports start telling accurate story and not just creating beautiful visuals.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>writing</category>
    </item>
    <item>
      <title>How Excel is Used in Real-World Data Analysis</title>
      <dc:creator>jayson kibet</dc:creator>
      <pubDate>Wed, 25 Mar 2026 14:02:05 +0000</pubDate>
      <link>https://dev.to/jaysonjob/how-excel-is-used-in-real-world-data-analysis-2mj7</link>
      <guid>https://dev.to/jaysonjob/how-excel-is-used-in-real-world-data-analysis-2mj7</guid>
      <description>&lt;h2&gt;
  
  
  INTRODUCTION
&lt;/h2&gt;

&lt;p&gt;I used to think Excel is a boring spreadsheet full of rows and columns only used by accountants and nobody cared about it. Everything changed the moment I jumped into data analytics. I came to realize that Excel really is a spreadsheet software developed by Microsoft that allows you to make calculations and analyse data. It is also the most powerful tool in data analytics. Excel is used in almost every industry you can think of.&lt;/p&gt;

&lt;h2&gt;
  
  
  Real World Use Cases of Excel
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Education Institutions
&lt;/h3&gt;

&lt;p&gt;Excel is used to monitor the trend in performance of students in schools by calculating their score, the mean mark and highlighting the top performers.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Business
&lt;/h3&gt;

&lt;p&gt;Excel is used by most companies and firms to track down their sales, profits and losses. It can also show their product's performance in various tables and charts.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Healthcare
&lt;/h3&gt;

&lt;p&gt;Health institutions use Excel to monitor their patients and keep their track records. It can also calculate the number of patients and medicines distributed within the health facility.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. E-Commerce
&lt;/h3&gt;

&lt;p&gt;A major example is Jumia. It uses Excel to calculate discounts distributed among different products and identify the most sold products.&lt;/p&gt;

&lt;h2&gt;
  
  
  Key Formulas in Excel
&lt;/h2&gt;

&lt;p&gt;Excel is run by different formulas.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. IF Statement
&lt;/h3&gt;

&lt;p&gt;One of the most effective formulas is the IF statement. This gives a specific command. For example:&lt;br&gt;
=IF(A2&amp;lt;30,"young","old")&lt;br&gt;
This statement tells us that in cell A2, if its value is less than 30, then it should be classified as young and the rest should be old.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. SUM Statement
&lt;/h3&gt;

&lt;p&gt;The SUM statement adds up the highlighted column. For example:&lt;br&gt;
=SUM(A2:A20)&lt;br&gt;
This command sums up the values from the second row up to the twentieth row.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. VLOOKUP
&lt;/h3&gt;

&lt;p&gt;VLOOKUP searches for a value in one column and returns a matching value from another column: =VLOOKUP(A2,product_table,2,FALSE)&lt;br&gt;
This formula searches for the value in cell A2 in the first column of the table and returns the corresponding value from the second column.&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Cleaning
&lt;/h2&gt;

&lt;p&gt;Before analysing data, you ought to clean it for easier analysis. One of the major ways of cleaning is by removing duplicates. You can also replace some values by simply pressing Ctrl+H. This shortcut allows you to find a value and replace it.&lt;br&gt;
 Another common formula is TRIM.&lt;br&gt;
This special command eliminates unnecessary spaces before, after and between words inside the cells. Example:&lt;br&gt;
=TRIM(A2)&lt;br&gt;
It eliminates unnecessary spaces in cell A2.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sorting and Conditional Formatting
&lt;/h2&gt;

&lt;p&gt;Sorting allows you to arrange the selected column in either ascending or descending order, whereas conditional formatting allows you to change the colour of the highlighted cell depending on what you want to highlight. It makes it easier for you to scan and spot patterns in large data instead of going through every row.&lt;/p&gt;

&lt;h2&gt;
  
  
  Data Visualization
&lt;/h2&gt;

&lt;p&gt;Excel goes beyond calculations and writing formulas.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Pivot Tables
&lt;/h3&gt;

&lt;p&gt;Pivot tables in Excel summarise data in seconds without writing formulas and making calculations, simply by dragging and dropping the columns you want to analyse.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Charts and Graphs
&lt;/h3&gt;

&lt;p&gt;Excel allows you to present your data in the form of graphs and charts for easy understanding. You can also use a pie chart to show how various parts make a whole.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;At first, I underestimated Excel, but learning it has completely changed how I see data. It is now one of the first tools I would recommend to anyone starting in data analytics.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>analytics</category>
    </item>
  </channel>
</rss>
