<?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: Elizabeth Njoroge</title>
    <description>The latest articles on DEV Community by Elizabeth Njoroge (@elizabeth_njoroge_7c850b9).</description>
    <link>https://dev.to/elizabeth_njoroge_7c850b9</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3952219%2F55c0b0f3-82c5-47e6-b554-c6a3fb63d0f8.jpg</url>
      <title>DEV Community: Elizabeth Njoroge</title>
      <link>https://dev.to/elizabeth_njoroge_7c850b9</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/elizabeth_njoroge_7c850b9"/>
    <language>en</language>
    <item>
      <title>Stop repeating yourself, try Loops.</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Tue, 15 Sep 2026 21:02:25 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/stop-repeating-yourself-try-loops-2ade</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/stop-repeating-yourself-try-loops-2ade</guid>
      <description>&lt;h3&gt;
  
  
  Loops for repetitive tasks.
&lt;/h3&gt;

&lt;p&gt;Loop takes a collection of items and run it once for each item. For example;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F34qign2bogwshlulk3nk.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F34qign2bogwshlulk3nk.png" alt=" " width="800" height="244"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The output,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsyp78oggn5qe86tyuawa.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsyp78oggn5qe86tyuawa.png" alt=" " width="634" height="302"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want to use a sequence of numbers making it to produce numbers one at a time ten we use &lt;strong&gt;&lt;em&gt;range&lt;/em&gt;&lt;/strong&gt;. It starts at 0 and stops before the number.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwxeqk27dug1bzqdcz534.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwxeqk27dug1bzqdcz534.png" alt=" " width="534" height="144"&gt;&lt;/a&gt;&lt;br&gt;
This prints &lt;em&gt;0,1,2&lt;/em&gt;, and does not include &lt;em&gt;3&lt;/em&gt; since we start with &lt;em&gt;0&lt;/em&gt;.&lt;br&gt;
If you want to choose where to start then &lt;strong&gt;range(start, stop)&lt;/strong&gt;. This starts at &lt;em&gt;2&lt;/em&gt; and stops before &lt;em&gt;6 _so it stops at _5&lt;/em&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffkwshq4bynczbuuv04hl.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffkwshq4bynczbuuv04hl.png" alt=" " width="448" height="228"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want to skip a number then &lt;strong&gt;range(start, stop, step)&lt;/strong&gt;.  This skips number &lt;em&gt;2&lt;/em&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa1ksefxz2k8fjzb629u7.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fa1ksefxz2k8fjzb629u7.png" alt=" " width="454" height="250"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Loop over a string&lt;/strong&gt;.&lt;br&gt;
This gets you a character one at a time and used to count letters or even check for spellings.&lt;br&gt;
Example with printing each letter,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk7pffr8kp79ljrduszpj.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk7pffr8kp79ljrduszpj.png" alt=" " width="422" height="512"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example with printing each letter with its position number,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4qilyx6l4yx9edp2hh01.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4qilyx6l4yx9edp2hh01.png" alt=" " width="688" height="464"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example with counting the vowels of the word,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6x1ml95pga0y2rrzusej.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6x1ml95pga0y2rrzusej.png" alt=" " width="798" height="522"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example with reversing the word,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbobukgx6m85xhq7f60aq.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbobukgx6m85xhq7f60aq.png" alt=" " width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Loops over a dictionary&lt;/strong&gt;&lt;br&gt;
Dictionaries store data in &lt;em&gt;key: value&lt;/em&gt;&lt;br&gt;
Example, we have a data on different animals and the number of legs they have;&lt;br&gt;
animals = {"zebra": 4, "eagle": 2, "octopus": 8}&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;loop over keys&lt;/strong&gt;, shows the keys(animals listed)&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdqt1fp5u0zr06jc2wc74.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdqt1fp5u0zr06jc2wc74.png" alt=" " width="800" height="379"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;loop over values&lt;/strong&gt;, shows only the values (number of legs)&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmvv15ekag5co0m6bfp9s.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmvv15ekag5co0m6bfp9s.png" alt=" " width="800" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;3.&lt;strong&gt;loop over the keys and values&lt;/strong&gt; (shows both the animals and the number of legs they have).&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8iq5imox97wmljnn0mox.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8iq5imox97wmljnn0mox.png" alt=" " width="799" height="369"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4.&lt;strong&gt;loop with position number&lt;/strong&gt; (shows the position, the animal and the number of legs). We also use the enumerate to show position.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhw8rpw946gi3tupk22n4.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhw8rpw946gi3tupk22n4.png" alt=" " width="800" height="369"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;5.&lt;strong&gt;loop over multiple lists&lt;/strong&gt;, uses two related lists to loop them together at once by using &lt;em&gt;zip&lt;/em&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk6etnw49r0a3l0u0sijr.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fk6etnw49r0a3l0u0sijr.png" alt=" " width="799" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example with three lists at once,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F19tept6bgogk5gw2813z.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F19tept6bgogk5gw2813z.png" alt=" " width="800" height="434"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If one list is shorter, the extra is ignored,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsl1z81zd7tgxdx1jgdml.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsl1z81zd7tgxdx1jgdml.png" alt=" " width="800" height="408"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Nested loops&lt;/strong&gt; is a loop inside another loop and is common for grinds and 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5e0q95tsy169so5rzrt4.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5e0q95tsy169so5rzrt4.png" alt=" " width="800" height="446"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftts6ka8oeyk657pfvhws.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftts6ka8oeyk657pfvhws.png" alt=" " width="800" height="495"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;&lt;em&gt;While&lt;/em&gt;&lt;/strong&gt; in loops is used when there is a condition. You use this when you do not know in advance the number of iterations. If a condition is &lt;em&gt;true&lt;/em&gt; the loops run unless the condition becomes &lt;em&gt;false&lt;/em&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv1o99ax0ft41wc46dy3l.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv1o99ax0ft41wc46dy3l.png" alt=" " width="780" height="498"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;2.&lt;strong&gt;&lt;em&gt;Break&lt;/em&gt;&lt;/strong&gt; in loop leaves the loop early.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvmxnwf6mpc45oh1ybsfn.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvmxnwf6mpc45oh1ybsfn.png" alt=" " width="696" height="292"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;3.&lt;strong&gt;&lt;em&gt;Continue&lt;/em&gt;&lt;/strong&gt; in loop skips the rest of the current iteration and jumps back to the top of the loop.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fruwafrqz09s61wwwpql5.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fruwafrqz09s61wwwpql5.png" alt=" " width="696" height="304"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsr50ejp9dtsmpf24uavi.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsr50ejp9dtsmpf24uavi.png" alt=" " width="800" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;4.&lt;strong&gt;&lt;em&gt;Pass&lt;/em&gt;&lt;/strong&gt; does nothing and means that it is intentionally empty.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0ymmhhbauc8ev8nqygol.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0ymmhhbauc8ev8nqygol.png" alt=" " width="800" height="425"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzwfqmyl0auywsd3v7syh.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzwfqmyl0auywsd3v7syh.png" alt=" " width="598" height="498"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;For&lt;/em&gt;&lt;/strong&gt; loops go through an item one by one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Range&lt;/em&gt;&lt;/strong&gt; stops before the last number.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Enumerate&lt;/em&gt;&lt;/strong&gt; gives you index and value.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Zip&lt;/em&gt;&lt;/strong&gt; uses two related lists to loop them together at once.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;em&gt;Pass&lt;/em&gt;&lt;/strong&gt; does nothing.&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>Python Operators and Conditionals Explained</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Tue, 15 Sep 2026 12:49:34 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/python-operators-and-conditionals-explained-342</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/python-operators-and-conditionals-explained-342</guid>
      <description>&lt;p&gt;&lt;strong&gt;Operators&lt;/strong&gt;&lt;br&gt;
Operators are special symbols that are used to perform operations on values and variables. There is types to it;&lt;br&gt;
1.&lt;strong&gt;Arithmetic&lt;/strong&gt; which perform mathematical calculations that includes addition (+), division (/), multiplication (*).&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc03nhc64jfb1yq0mjfsa.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fc03nhc64jfb1yq0mjfsa.png" alt=" " width="484" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Comparison&lt;/strong&gt; which compares two values and often return a boolean result, the true or false ones. Example (==) equal to, (!=) not equal to, greater than (&amp;gt;).&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgxm82jxkad7tr74ekaew.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgxm82jxkad7tr74ekaew.png" alt=" " width="776" height="262"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Logical&lt;/strong&gt; combines conditional statements like and, or, not.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1x2a9maj6pxgol28v7yy.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1x2a9maj6pxgol28v7yy.png" alt=" " width="726" height="468"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Assignment&lt;/strong&gt; assigns values to variables an includes, =, +=.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frju5k7fcyqmqfjvumy02.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Frju5k7fcyqmqfjvumy02.png" alt=" " width="600" height="170"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conditionals&lt;/strong&gt;&lt;br&gt;
 After using operators, there comes conditionals statement that tells python what to do next. Example is if, elif and else.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;If&lt;/em&gt;&lt;/strong&gt; returns a logic and when evaluated depending with what you want to be returned, the rest is skipped. For example; what we have here is if a student has a laptop then the output is yes and if no then the answer is skipped. It returns the_ TRUE_.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzretl3q14niqyxty0wl9.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzretl3q14niqyxty0wl9.png" alt=" " width="800" height="176"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Elif&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
Elif if the short form of else if and is the opposite of if where when the condition before was if and it returns False, and elif returns it as True then the rest is skipped. Example&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnx3h9ayxwza768f17f6p.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnx3h9ayxwza768f17f6p.png" alt=" " width="800" height="325"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Else&lt;/em&gt;&lt;/strong&gt; now is the last condition that when ran it runs when the if and elif returns false. Example &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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqo26awgj7elu7qmxnpc6.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqo26awgj7elu7qmxnpc6.png" alt=" " width="800" height="276"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Operators produce value and conditional are the statements. Once you look at it like that then it will be easier to understand what you want to write up.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>coding</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Connecting Power BI to SQL Databases.</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Thu, 10 Sep 2026 21:52:16 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/-connecting-power-bi-to-sql-databases-3k7l</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/-connecting-power-bi-to-sql-databases-3k7l</guid>
      <description>&lt;p&gt;&lt;strong&gt;A step by step tutorial&lt;/strong&gt;.&lt;br&gt;
Power BI is a data visualization tool and a business intelligence platform that turns raw data into interactive dashboards and reports. This tool looks to connecting users to various data sources including SQL databases, lets look at two ;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Connecting to a local databases(postgresql)&lt;/li&gt;
&lt;li&gt;Connecting to a cloud sql database (aiven).&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Connecting to a cloud sql database (Aiven).
&lt;/h2&gt;

&lt;p&gt;Aiven is a cloud platform that provides databases services. It requires a certificate which is SSL for connections.&lt;/p&gt;

&lt;p&gt;Let's start;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create or Log in to aiven.&lt;/li&gt;
&lt;li&gt;Click the 'Create services'.&lt;/li&gt;
&lt;li&gt;Choose the provider and region.&lt;/li&gt;
&lt;li&gt;Click 'Create service'&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr203vh3xomxk3q8bjgrc.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fr203vh3xomxk3q8bjgrc.png" alt=" " width="800" height="263"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Get connection details&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Get the following information and note them down.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Host&lt;/li&gt;
&lt;li&gt;Port&lt;/li&gt;
&lt;li&gt;Database&lt;/li&gt;
&lt;li&gt;Username&lt;/li&gt;
&lt;li&gt;Password&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsf85wp2e6hjbnr4yzdbe.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fsf85wp2e6hjbnr4yzdbe.png" alt=" " width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Download the CA certificate from Aiven.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2omkfnq81fq4kqsrupge.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F2omkfnq81fq4kqsrupge.png" alt=" " width="800" height="49"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Install the certificate on windows in the Trusted Root Certification Authorities stores.&lt;/li&gt;
&lt;li&gt;Use DBeaver to connect to Aiven and import the raw dataset.&lt;/li&gt;
&lt;li&gt;Verify the data to loaded successfully.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  How to connect Power BI to the database
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open Power BI.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F90t0w0m39sd1jqlzrr1a.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F90t0w0m39sd1jqlzrr1a.png" alt=" " width="800" height="382"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Click get data to postgreSQL database.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fls64dtohwv5g7udugsue.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fls64dtohwv5g7udugsue.png" alt=" " width="800" height="785"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Input the server and database.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzj602nwqp8mricmgl3t9.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzj602nwqp8mricmgl3t9.png" alt=" " width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Set the ssl mode.&lt;/li&gt;
&lt;li&gt;Connect and load the table.
Look for the table that you either want to load or transform. You can also choose to clean the data.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Cleaning the data
&lt;/h2&gt;

&lt;p&gt;Here we will turn the messy raw data into a cleaned dataset that will be used later for our dashboard.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step by step&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;After connecting power BI to aiven and loading the data, will will use the power BI query to clean it.
The issues that the data has includes;

&lt;ul&gt;
&lt;li&gt;Text in number column&lt;/li&gt;
&lt;li&gt;Missing values&lt;/li&gt;
&lt;li&gt;Mixed capitalisation&lt;/li&gt;
&lt;li&gt;Mixed date types format&lt;/li&gt;
&lt;/ul&gt;
&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqrt4g09fl0kk4yg95jap.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqrt4g09fl0kk4yg95jap.png" alt=" " width="798" height="186"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The measures and calculations used
The measures include;

&lt;ul&gt;
&lt;li&gt; Total revenue&lt;/li&gt;
&lt;li&gt; Total Units Sold&lt;/li&gt;
&lt;li&gt; Total Orders&lt;/li&gt;
&lt;li&gt; Gross Profit&lt;/li&gt;
&lt;li&gt; Gross Profit Margin&lt;/li&gt;
&lt;li&gt; Avg Delivery Days&lt;/li&gt;
&lt;li&gt; Avg Rating&lt;/li&gt;
&lt;/ul&gt;
&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjnkf9esnm1ocmow02gu1.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjnkf9esnm1ocmow02gu1.png" alt=" " width="796" height="63"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The calculations include&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt; Sum&lt;/li&gt;
&lt;li&gt; Count&lt;/li&gt;
&lt;li&gt; Divide&lt;/li&gt;
&lt;li&gt; Average&lt;/li&gt;
&lt;/ul&gt;

&lt;ol&gt;
&lt;li&gt;The visuals I include in my dashboard;

&lt;ul&gt;
&lt;li&gt; Slicers&lt;/li&gt;
&lt;li&gt; Pie chart&lt;/li&gt;
&lt;li&gt; Bar chart&lt;/li&gt;
&lt;li&gt; Column chart&lt;/li&gt;
&lt;li&gt; Donut chart&lt;/li&gt;
&lt;/ul&gt;
&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fslbtqmjt2emmfhbk3gvg.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fslbtqmjt2emmfhbk3gvg.png" alt=" " width="800" height="554"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Building  dashboard is a result of importing raw data, connecting Power Bi, cleaning and transforming the data and then finally designing interactive dashboard.&lt;br&gt;
The end product helps management to make good data driven decisions.&lt;/p&gt;

</description>
      <category>power</category>
      <category>sqlserver</category>
      <category>database</category>
    </item>
    <item>
      <title>Python 101</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Thu, 10 Sep 2026 17:34:04 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/python-101-1k18</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/python-101-1k18</guid>
      <description>&lt;p&gt;&lt;strong&gt;Python&lt;/strong&gt; is an interpreted language. Look at it like this, if a person wants to share their code program with someone else so that the other person can run it, if they share the code they wrote, then it's an interpreted language. In python you can create code to a file, then import that file, and the interpreter would read it in real time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Writing your first code&lt;/em&gt;&lt;/strong&gt;&lt;br&gt;
There's a tradition for every coder while starting to learn python is printing 'Hello, world!'. To do this open vscode and run the code like this; print("Hello, World!")&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ff7tqdwcjwbazvrl5ffwx.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ff7tqdwcjwbazvrl5ffwx.png" alt=" " width="448" height="142"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;That's it, your first code is running.&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Print shows text or values to the user or displays output to the console.&lt;/li&gt;
&lt;li&gt;() the parenthesis name the inputs the function will use, after it, it tells the Python to run the function.&lt;/li&gt;
&lt;li&gt;" ', Single or double quotes shows text as a string by enclosing it in quotation marks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There are basics in python that we will look at;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Variables.&lt;/strong&gt;
A variable refers to a value. More like they are used to store basically any data your program needs. A variable names can only contain numbers, letters and underscores and cannot start with a number hence you cannot use words like; false, none, true, and, as, if, in ,pass etc. 
Example of a basic variable;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq8m6w64wwm902w545qkj.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fq8m6w64wwm902w545qkj.png" alt=" " width="530" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Example of different Variable types;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdxy3t0i0tl1opoo18qsm.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fdxy3t0i0tl1opoo18qsm.png" alt=" " width="492" height="428"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Data types&lt;/strong&gt;
Data types categorize the kind of values a variable can hold. They include;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;-Numeric (int, float), integers are for whole numbers. Float represents decimal numbers, like tracking scores or counting people.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe5qhqu9je0uojyei74it.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fe5qhqu9je0uojyei74it.png" alt=" " width="772" height="506"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text (str) is used for text, that represents sequence of characters.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftoqnowmzp6k51dk8fz0l.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftoqnowmzp6k51dk8fz0l.png" alt=" " width="698" height="532"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Boolean (bool), represents truth numbers, that is true or false.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftrrce882q49zlm6ox16w.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ftrrce882q49zlm6ox16w.png" alt=" " width="770" height="538"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Sequence (list, tuple, range).
List. They are ordered, mutable collections that can hold items of different types. This meaning their value cannot be changed after creation.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Foff06falkbis3y6mhffi.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Foff06falkbis3y6mhffi.png" alt=" " width="800" height="348"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tuple. They are orders, immutable collections defined with parentheses. It is used when the order is important but the contents would not change. For example coordinates.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Finnxri9g0tamdz396r7t.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Finnxri9g0tamdz396r7t.png" alt=" " width="730" height="448"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Range. Generates a sequence of numbers.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmhzl6i77dmo7u07vurce.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fmhzl6i77dmo7u07vurce.png" alt=" " width="506" height="152"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Mapping , stores data as key value pairs.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpsyecr6yo0qc5xc9jwas.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpsyecr6yo0qc5xc9jwas.png" alt=" " width="468" height="330"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Set. This is collection of unique items and are placed inside curly braces {}.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fopcabfpvg5iwek07k30e.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fopcabfpvg5iwek07k30e.png" alt=" " width="778" height="246"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;None. It is used where there is absence of value.&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv2q6aiuycr2ktyp8dv79.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fv2q6aiuycr2ktyp8dv79.png" alt=" " width="792" height="488"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Input/Output&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Input waits for a user to type something and then return it as a string.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjm5mtdqs1d6z12qh1ceh.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjm5mtdqs1d6z12qh1ceh.png" alt=" " width="514" height="246"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Output displays a message.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fffi5rek329yvye040q7a.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fffi5rek329yvye040q7a.png" alt=" " width="396" height="182"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;summary&lt;/strong&gt;&lt;br&gt;
We have talked about;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;variables&lt;/li&gt;
&lt;li&gt;data types&lt;/li&gt;
&lt;li&gt;input/output.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When people ask why use python it is because of python's ease of learning . Depends on what you do Python is very relevant for data science, computing, and AI.&lt;/p&gt;

</description>
      <category>python</category>
      <category>beginners</category>
      <category>basic</category>
      <category>coding</category>
    </item>
    <item>
      <title>SQL FUNCTIONS</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Wed, 09 Sep 2026 20:23:07 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/sql-functions-3ine</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/sql-functions-3ine</guid>
      <description>&lt;p&gt;&lt;strong&gt;SQL Functions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Commonly Used Functions&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Window Functions examples include, (Row_number, Rank). This function is used to retrieve single records out of a repeating table .
&lt;strong&gt;Row_number:&lt;/strong&gt; This gives each row a unique number in sequential order within a group.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F21lpdy3chri64bkxoho0.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F21lpdy3chri64bkxoho0.png" alt=" " width="800" height="375"&gt;&lt;/a&gt;&lt;br&gt;
For example, Number transactions by customer . Hence for each customer, number their transactions starting from 1.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Rank:&lt;/strong&gt; This ranks each row based on its value, leaving gaps when two or more rows have the same rank.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6cawzjjn1d6i6g57t17o.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6cawzjjn1d6i6g57t17o.png" alt=" " width="799" height="230"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This ranks all successful transactions by amount. The biggest transaction gets rank 1. If two transactions have the same amount, they get the same rank, and the next rank skips a number.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;STRING FUNCTIONS (CONCAT, SUBSTRING, TRIM, REPLACE, UPPER/LOWER). This is a basic text manipulation for formatting and cleaning the data.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;*&lt;em&gt;Concat *&lt;/em&gt;: This is used to join two or more strings together into a single string.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fagvg3xerpekqn2ojp7ja.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fagvg3xerpekqn2ojp7ja.png" alt=" " width="800" height="245"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Substring&lt;/strong&gt; : This is used to extract a portion of a string based on position and length.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0o4x3df7yq7x0ioyf71q.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0o4x3df7yq7x0ioyf71q.png" alt=" " width="799" height="189"&gt;&lt;/a&gt;&lt;br&gt;
 The results looks like;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flqlox6p1qp4upkz3zx4v.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flqlox6p1qp4upkz3zx4v.png" alt=" " width="799" height="261"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Trim&lt;/strong&gt;: This is used to remove unwanted characters which is mostly spaces from the beginning and or end of a string. eg '   John Mwangi  ' to 'John Mwangi'&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnzd831lj2ksuot3yyv3q.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnzd831lj2ksuot3yyv3q.png" alt=" " width="798" height="132"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Replace&lt;/strong&gt;: This is used to substitute all occurrences of a specified substring within a string with another substring.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzkcw1p00w5jsw6olerbn.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fzkcw1p00w5jsw6olerbn.png" alt=" " width="800" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Upper/Lower/initcap&lt;/strong&gt;&lt;br&gt;
Upper converts all characters to UPPERCASE.&lt;br&gt;
Lower converts all characters to lowercase.&lt;br&gt;
Initcap converts first letter of each word to uppercase. Example;&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs7adksm2pxob936w9eq6.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs7adksm2pxob936w9eq6.png" alt=" " width="800" height="260"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9x7yo1oqkcvmlhb1fa5i.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9x7yo1oqkcvmlhb1fa5i.png" alt=" " width="800" height="168"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Aggregate Functions (COUNT, SUM, AVG, MIN, MAX): Fundamental for summarising data.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Count&lt;/strong&gt;, returns the number of rows that match a specified condition.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbajdbu2rqzuvv09ahs19.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbajdbu2rqzuvv09ahs19.png" alt=" " width="799" height="156"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sum&lt;/strong&gt;, returns the total sum of a numeric 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F46liwvmmn4pfzbvt3wr6.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F46liwvmmn4pfzbvt3wr6.png" alt=" " width="799" height="162"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Avg&lt;/strong&gt;,  returns the average which is the mean value of a numeric 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7ylhgnjv74in703owaig.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F7ylhgnjv74in703owaig.png" alt=" " width="800" height="195"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Min&lt;/strong&gt;, returns the minimum or the smallest value from a 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5wq3jdwwymj4dyc6gje0.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5wq3jdwwymj4dyc6gje0.png" alt=" " width="800" height="182"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Max&lt;/strong&gt;, returns the maximum or largest value from a 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyliqut9mz9m6au0x38c4.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fyliqut9mz9m6au0x38c4.png" alt=" " width="800" height="199"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;GROUP_CONCAT is used for combining values per group from multiple rows to a single string.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw3q8lt1s2tfd6swjjd1m.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fw3q8lt1s2tfd6swjjd1m.png" alt=" " width="800" height="101"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
The advantages on these functions are such that it is  efficient for SQL to perform operations on entire sets inside the database engine.&lt;br&gt;
It also handles large data, as SQL is designed for big tables and can process millions of rows reliably.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>beginners</category>
      <category>sql</category>
      <category>dbeaver</category>
    </item>
    <item>
      <title>SUBQUERIES and CTEs</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Wed, 09 Sep 2026 18:49:34 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/subqueries-and-ctes-2e5n</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/subqueries-and-ctes-2e5n</guid>
      <description>&lt;p&gt;&lt;strong&gt;&lt;u&gt;SUBQUERIES&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
Subquery is a query inside a query and is used when one statement needs a result from another. It is usually inside a clause like 'where' :&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft47b9gw9tb0gdsu4n42n.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft47b9gw9tb0gdsu4n42n.png" alt=" " width="770" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;'from' &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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxpv97o9bjvr6tgjzjbrw.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxpv97o9bjvr6tgjzjbrw.png" alt=" " width="799" height="246"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;or 'select'. &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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxckt7b27qstyc6991xvq.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxckt7b27qstyc6991xvq.png" alt=" " width="799" height="204"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;CTE&lt;/strong&gt;&lt;br&gt;
A CTE(Common Table Expression) is a temporary named result set that one can reference within single query to reuse in the next query.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnjoeogp6o9m7fz3yekfg.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fnjoeogp6o9m7fz3yekfg.png" alt=" " width="800" height="180"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Advantages of CTE&lt;/strong&gt;&lt;/u&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CTEs tend to be preferred for readability and structuring complex structure.&lt;/li&gt;
&lt;li&gt;A thing with CTEs is it is reusable in that you can reuse the definition without rewriting it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt;Difference between subquery and CTE&lt;br&gt;
&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;CTEs support recursion while subqueries do not.&lt;/li&gt;
&lt;li&gt;Subqueries can be correlated while CTE cannot.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;conclusion&lt;/strong&gt;&lt;/u&gt;&lt;br&gt;
When writing and reading SQL the style I prefer and will pick is usually CTEs as they are easier to read and follow through. Also the fact that it takes less rework when going back to look or want to retrieve information.&lt;/p&gt;

</description>
      <category>database</category>
      <category>learning</category>
      <category>sql</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>SQL JOINS</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Wed, 09 Sep 2026 12:41:23 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/sql-joins-30l6</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/sql-joins-30l6</guid>
      <description>&lt;p&gt;SQL joins allows you to combine rows from two or more tables based on a related column between them. There are different types of joints as they have different functions.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Inner Join.&lt;/strong&gt;
Returns records that have matching values in both tables. This is the most common type of join, and is useful when you need to retrieve data that exists in both tables. For example " customer_id is in both tables".&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fumql0tyadltjb8ti6t4u.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fumql0tyadltjb8ti6t4u.png" alt=" " width="800" height="435"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Left (Outer) Join.&lt;/strong&gt;
Returns all records from the left table, and the matched records from the right table. When using this join if there is no match, the columns from the right table will contain NULL. For example :&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp6h4ungfi0pjx7zno82n.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fp6h4ungfi0pjx7zno82n.png" alt=" " width="800" height="474"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Right (Outer) Join.&lt;/strong&gt;
Returns all records from the right table, and the matched records from the left table. When using this join if there is no match, the columns from the left table will contain NULL. For example:&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1wcsvtqmktp6b107kyei.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1wcsvtqmktp6b107kyei.png" alt=" " width="800" height="384"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Full (Outer) Join.&lt;/strong&gt;
Returns all records when there is a match in either the left or right table. When using this join, if there is no match, the columns from the non-matching side will contain NULL. For example:&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0o5kerenevck4ig1qe7h.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0o5kerenevck4ig1qe7h.png" alt=" " width="799" height="460"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;HAVE FUN WITH JOINS!!!&lt;/p&gt;

</description>
      <category>sql</category>
      <category>analytics</category>
      <category>beginners</category>
      <category>basic</category>
    </item>
    <item>
      <title>DDL and DML</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Wed, 09 Sep 2026 11:55:08 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/ddl-and-dml-3nca</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/ddl-and-dml-3nca</guid>
      <description>&lt;p&gt;&lt;strong&gt;DDL&lt;/strong&gt;&lt;br&gt;
DDL in full is Data Definition Language where in SQL is a set of commands used to define, modify, and manage the structure of a database.DDL defines the logical schema so database engines can optimise storage, enforce constraints, and execute declarative queries efficiently.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;USES&lt;/strong&gt;&lt;br&gt;
One of the core uses of is that it defines a schema where DDL is used to declare structures like tables, views, indexes and constraints.&lt;/p&gt;

&lt;p&gt;It also declares relations for example in relational databases a table and a select are both relations as DDL sets those relation definitions and constraints. &lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;Key Commands in DDL&lt;/strong&gt;&lt;/u&gt;&lt;br&gt;
DDL includes commands to create, alter, drop, truncate, and rename database objects.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;CREATE&lt;/strong&gt;: Used to create new database objects such as tables and views.
Example: "CREATE TABLE mobile_money.transcation)"transaction_id varchar(20) NOT NULL,
transaction_timestamp timestamp NULL,
customer_id varchar(20) NULL,
customer_name varchar(100) NULL,&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F17m4y3t7zv0l39zrmsiz.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F17m4y3t7zv0l39zrmsiz.png" alt=" " width="800" height="123"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;ALTER&lt;/strong&gt;: Used to modify the structure of an existing database object. For Example adding a new column to an existing table
Example: "ALTER TABLE  ADD COLUMN  "&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F10hj977utfh7nifm92v0.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F10hj977utfh7nifm92v0.png" alt=" " width="800" height="102"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;DROP&lt;/strong&gt;: Used to delete existing database objects.
Example: "DROP TABLE mobile_money.transactions"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4hu7r1b786myo4ilrohi.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4hu7r1b786myo4ilrohi.png" alt=" " width="799" height="58"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;TRUNCATE&lt;/strong&gt;: Used to remove all records from a table, including all spaces allocated for the records, but without deleting the table structure itself.
Example: "TRUNCATE TABLE mobile_money.transactions". This clears out all the rows from my transactions table while keeping the structure.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffbfuyd38bgop90lzf4r7.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffbfuyd38bgop90lzf4r7.png" alt=" " width="800" height="92"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;RENAME&lt;/strong&gt;: Used to rename an existing database object.If you want to change the table name from transactions to something like mobile_money_logs. For example: "RENAME TABLE TO mobile_money_logs"&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkk7vl0svosl57w5mt190.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fkk7vl0svosl57w5mt190.png" alt=" " width="798" height="140"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you want to rename a column inside the table (for example, changing amount_kes to transaction_amount):&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6odbgf3golo3m9gluyvt.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F6odbgf3golo3m9gluyvt.png" alt=" " width="800" height="120"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;u&gt;&lt;strong&gt;DML&lt;/strong&gt;&lt;/u&gt;&lt;br&gt;
DML stands for Data Manipulation Language and the DML commands are used to manage data within database objects. These commands affect the records in the tables only. The commands include Select, Insert, Update, Delete&lt;/p&gt;

&lt;p&gt;1.&lt;strong&gt;SELECT&lt;/strong&gt; is used to retrieve data from one or more tables.&lt;br&gt;
For example: "SELECT * FROM mobile_money.transactions WHERE status = 'Success';". Running this query retrieves all columns (*) from the transactions table, but only for rows where the status column equals 'Success'.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwuec3w6g1xz6rf3yc32f.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwuec3w6g1xz6rf3yc32f.png" alt=" " width="793" height="45"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;INSERT&lt;/strong&gt;: Used to add new records to a table. For example:" INSERT INTO mobile_money.transactions (transaction_id, amount_kes) VALUES ('TXN001', 500);". Running this query  adds a new record (row) to the transactions table, but only fills two columns which is transaction_id and amount_kes.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9u8vvvh3i6so9vm0n0gh.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F9u8vvvh3i6so9vm0n0gh.png" alt=" " width="798" height="80"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;UPDATE&lt;/strong&gt;: Used to modify existing records in a table. For Example: "UPDATE mobile_money.transactions 
SET status = 'Failed' 
WHERE transaction_id = 'TXN001';"This query modifies existing data in the transactions table by changing the status column to 'Failed' for the specific transaction with ID 'TXN001'. &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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F82511gsxaxnc0hu69z3q.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F82511gsxaxnc0hu69z3q.png" alt=" " width="799" height="174"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;DELETE&lt;/strong&gt;: Used to remove existing records from a table. For example: " DELETE FROM mobile_money.transactions 
WHERE transaction_id = 'TXN001';" . This query removes an entire row from the transactions table where the transaction_id equals 'TXN001'. This action is permanent.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5l3e0s8nccpft59hskq0.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5l3e0s8nccpft59hskq0.png" alt=" " width="800" height="121"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also one can delete data with date conditions, Example: "DELETE FROM mobile_money.transactions &lt;br&gt;
WHERE transaction_timestamp &amp;lt; '2025-01-01';" . This deletes all transactions older than 2025.&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo3nmxa6c61o8on60oxig.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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fo3nmxa6c61o8on60oxig.png" alt=" " width="800" height="121"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;u&gt;Difference&lt;/u&gt;&lt;/strong&gt;&lt;br&gt;
The main difference between DDL and DML is that DDL defines and manages database structures altering the schema, while DML manipulates the data within those structures changing or having access to the data inside it. &lt;/p&gt;

</description>
      <category>database</category>
      <category>learning</category>
    </item>
    <item>
      <title>POWER BI?</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Mon, 29 Jun 2026 17:38:42 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/power-bi-hmm</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/power-bi-hmm</guid>
      <description>&lt;p&gt;Power BI is another visualisation tool that depending on what data you have, figuring what you want to do will dictate on whether it is the right tool to use. &lt;/p&gt;

&lt;h2&gt;
  
  
  Relationship, schemas and joins.
&lt;/h2&gt;

&lt;p&gt;While working with a workload especially when analysing Power BI models, relationship schema and joins can be considered to be "patterns" that connects everything. The main type of schema includes;&lt;/p&gt;

&lt;h2&gt;
  
  
  1. Star Schema.
&lt;/h2&gt;

&lt;p&gt;This is a multi dimensional data model that is used to organise data to make it easy to understand and analyse. For example in the table below, there are two kinds of tables, one is a Fact table which stores quantitative data while the other table ids the Dimensional table which stores descriptive data and where all generally have a common 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhi0xhztteg62x4ssblfl.jpeg" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fhi0xhztteg62x4ssblfl.jpeg" alt=" " width="800" height="626"&gt;&lt;/a&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  Advantages
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Star is usually built for rapid analysis as it is easy to understand and navigate and that is why most business users use it.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It is generally faster and more efficient.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  2. Snowflake schema.
&lt;/h2&gt;

&lt;p&gt;This is mostly used for more complex, detailed dimensions with many hierarchies.&lt;br&gt;
When dimensions are incorporating all the fields into a single table for example which would make it hard to use then snowflake schema is ideal.&lt;/p&gt;

&lt;p&gt;Here is a table that shows an example of a snowflake schema&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxmbhe3w76pg1jfmghear.jpeg" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxmbhe3w76pg1jfmghear.jpeg" alt=" " width="773" height="522"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Snowflake is usually built for rapid transactions making it sometimes hard for users to understand and navigate.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Galaxy schema
&lt;/h2&gt;

&lt;p&gt;With Galaxy schema we usually have multiple fact tables.&lt;/p&gt;

&lt;h1&gt;
  
  
  Relationships
&lt;/h1&gt;

&lt;p&gt;Relationships defines how tables interact.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;One-to-One. This is when the tables have a common ID or unique values for the joined column.&lt;/li&gt;
&lt;li&gt;One-to-Many. This is when you are connecting a dimensional table which has the unique value to another table which is a fact table that has many sides.&lt;/li&gt;
&lt;li&gt;Many-to-One. This is the opposite of one-to-many.&lt;/li&gt;
&lt;li&gt;Many-to-Many. This is where the relationship is broken down to two one-to-many relationships.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There is also filter directions where in a single direction, the filter that connects the tables flows in one direction, while in a bi-directional, the filter flows in both directions.&lt;/p&gt;

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

&lt;p&gt;Joins are used to merge data from two tables based on a common column. The different types are;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Left Outer Join. This joins all rows from the left tables and the matching rows from the right side.&lt;/li&gt;
&lt;li&gt;Right Outer Join. This joins all the rows from the right tables and the matching rows from the left side.&lt;/li&gt;
&lt;li&gt;Full Outer Join. This includes all rows from both the primary and secondary tables.&lt;/li&gt;
&lt;li&gt;Inner Join. It includes rows where there is a match in both the tables based on the join key.&lt;/li&gt;
&lt;li&gt;Left Anti Join. This returns only the rows from the primary table that does not have a match in the secondary table.&lt;/li&gt;
&lt;li&gt;Right Anti Join. This returns only the rows from the secondary table that do not have a match in the primary table.&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;Power BI is a great tool for visualisation as it requires one to create more insightful dashboard elements from data.&lt;/p&gt;

</description>
      <category>powerfuldevs</category>
      <category>beginners</category>
      <category>newbie</category>
      <category>microsoft</category>
    </item>
    <item>
      <title>New to Data Analytics? Try EXCEL</title>
      <dc:creator>Elizabeth Njoroge</dc:creator>
      <pubDate>Mon, 29 Jun 2026 12:08:35 +0000</pubDate>
      <link>https://dev.to/elizabeth_njoroge_7c850b9/new-to-data-analytics-try-excel-5ahl</link>
      <guid>https://dev.to/elizabeth_njoroge_7c850b9/new-to-data-analytics-try-excel-5ahl</guid>
      <description>&lt;p&gt;Excel is mostly a tool that is used to automate calculations and analysis. This includes organising numbers into columns and rows, data processing and the basic level being using it to create tables, graphs, charts which can shoe data or trends.&lt;/p&gt;

&lt;h2&gt;
  
  
  ways Excel is used in real-world data analysis
&lt;/h2&gt;

&lt;p&gt;Excel is used in most businesses for different uses like&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Accounting and presentation. Used for tasks like calculations, ledger analysis.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Analysis. This comes when all those input done come out on the other side on excel for now analysis and the purpose of preparing the data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Reporting and Data Management. Here data is taken to organise and analyse data from various sources.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Records. Managing data by the use of tools like filtering, formulas and such.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Features and Formulas
&lt;/h2&gt;

&lt;p&gt;Although there are numerous features an formulas in Excel, one of the ones that i have found to be completely enjoyable includes;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;-(double dash) this will force the data in a row that had the true or false values to have 1 or 0.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ctrl + up/down will clear any filters you have selected on a table.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ctrl + insert row/column and ctrl- deletes row/column.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;How ever long you use excel, you will randomly come across features that will make you wonder how many other features are out there that you do not know of.&lt;/p&gt;

&lt;h3&gt;
  
  
  Personal reflections
&lt;/h3&gt;

&lt;p&gt;I have seen a lot of debate on whether Excel is still worth it in 2026 and honestly YES! We all use Excel in one way or another and all business rely on Excel entirely. Even with the these softwares that are coming up everyday, most need compatibility with Excel in that eventually it will revert back to it as every report exports to Excel.&lt;/p&gt;

</description>
      <category>data</category>
      <category>excel</category>
      <category>newbie</category>
      <category>beginners</category>
    </item>
  </channel>
</rss>
