{"id":1424,"date":"2024-05-27T11:11:27","date_gmt":"2024-05-27T11:11:27","guid":{"rendered":"https:\/\/dotlabs.ai\/blogs\/?p=1424"},"modified":"2024-05-27T13:56:13","modified_gmt":"2024-05-27T13:56:13","slug":"fundamentals-of-sql-for-data-engineering","status":"publish","type":"post","link":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/","title":{"rendered":"Mastering SQL for Data Engineering: Essential Fundamentals and Queries"},"content":{"rendered":"\n<p><br><\/p>\n\n\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Are\nyou ready to dive into the world of data engineering? SQL (Structured Query\nLanguage) is a foundational tool that every aspiring data engineer should\nmaster. Whether you&#8217;re just starting out or looking to brush up on your skills,\nthis guide will walk you through the fundamentals of SQL and equip you with the\nknowledge to write powerful queries for data manipulation and analysis.<br><br><o:p><\/o:p><\/span><\/p>\n<h2><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Why SQL?<o:p><\/o:p><\/span><\/h2>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">SQL\nis the language of databases, allowing users to interact with and manage data\neffectively. As a data engineer, proficiency in SQL is essential for tasks such\nas data extraction, transformation, and loading (<strong>ETL<\/strong>), data modeling, and querying large datasets.<br><br><o:p><\/o:p><\/span><\/p>\n<h2 style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Getting\nStarted<o:p><\/o:p><\/span><\/h2>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Let&#8217;s\nstart with the basics. SQL operates through commands known as queries, which\nare used to retrieve, manipulate, and manage data stored in relational\ndatabases. The primary components of SQL queries include:<br><\/span><\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-size: var(--single-content-size); font-weight: var(--single-content-weight); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\"><\/span><\/p>\n\n\n<p><strong style=\"line-height: 2;\">SELECT:<br>FROM:<br>WHERE:<br>GROUP BY:<br>HAVING:<br>ORDER BY:<br>JOIN:<\/strong><br><\/p>\n\n\n<p class=\"MsoNormal\" style=\"text-align: justify;\"><span style=\"font-size: var(--single-content-size); font-weight: var(--single-content-weight); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\">Used to retrieve data from one or more database tables.<\/span><span style=\"font-family: Helvetica, sans-serif;\"><br><\/span><\/p><p class=\"MsoNormal\" style=\"text-align: justify;\"><span style=\"line-height: 2;\"><span style=\"font-size: var(--single-content-size); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\"><span style=\"font-weight: var(--single-content-weight);\">Specifies the table(s) from which to retrieve data.<\/span><br><\/span><span style=\"font-size: var(--single-content-size); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\"><span style=\"font-weight: var(--single-content-weight);\">Filters data based on specified conditions.<\/span><br><\/span><span style=\"font-size: var(--single-content-size); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\"><span style=\"font-weight: var(--single-content-weight);\">Groups rows that have the same values into summary rows.<\/span><br><\/span><span style=\"font-size: var(--single-content-size); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\"><span style=\"font-weight: var(--single-content-weight);\">Filters group rows that do not satisfy a specified condition.<\/span><br><\/span><span style=\"font-size: var(--single-content-size); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\"><span style=\"font-weight: var(--single-content-weight);\">Sorts the result set in ascending or descending order.<\/span><br><\/span><span style=\"font-size: var(--single-content-size); font-weight: var(--single-content-weight); letter-spacing: var(--single-content-letterspacing); color: var(--body-text-default-color); font-family: Helvetica, sans-serif;\">Combines rows from two or more tables based on a related column between them.<\/span><\/span><\/p>\n\n\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Let&#8217;s\nwalk through some examples to illustrate these concepts:<br><\/span><strong><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><br><\/span><\/strong><\/p><h3><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">1. SELECT Statement:<br><br><o:p><\/o:p><\/span><\/h3>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><strong>Case:<\/strong> Enrollment\nin local colleges, 2005<br><br><\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><o:p><\/o:p><\/span><\/p><table class=\"MsoTableMediumShading2Accent5\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"92%\" style=\"width:92.3%;background:#222A35;mso-background-themecolor:\n text2;mso-background-themeshade:128;border-collapse:collapse;border:none;\n mso-border-top-alt:solid windowtext 2.25pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n mso-yfti-tbllook:1632;mso-padding-alt:0in 5.4pt 0in 5.4pt\">\n<tbody><tr>\n<td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border-top:solid windowtext 1.0pt;\n  border-left:none;border-bottom:solid windowtext 2.25pt;border-right:none;\n  mso-border-top-alt:solid windowtext .5pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n<p class=\"MsoNormal\" style=\"margin-bottom:0in;margin-bottom:.0001pt;text-align:\n  justify;line-height:normal;mso-yfti-cnfc:1\"><strong><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:white;mso-themecolor:background1\">SQL<o:p><\/o:p><\/span><\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border:none;\n  border-bottom:solid windowtext 1.0pt;mso-border-top-alt:double windowtext 2.25pt;\n  mso-border-top-alt:double windowtext 2.25pt;mso-border-bottom-alt:solid windowtext .5pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n<p class=\"MsoNormal\" style=\"margin-bottom:0in;margin-bottom:.0001pt;text-align:\n  justify;line-height:normal;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><span style=\"color:#ffffff;\">SELECT\n*<\/span> <o:p><\/o:p><\/span><\/p>\n<p class=\"MsoNormal\" style=\"margin-bottom:0in;margin-bottom:.0001pt;text-align:\n  justify;line-height:normal;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:#0070C0\">FROM <\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><font color=\"#ffffff\">employees;<\/font><br><br><\/span><\/p>\n<\/td>\n<\/tr>\n<\/tbody><\/table>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">This\nquery retrieves all columns from the &#8217;employees&#8217; table.<o:p><\/o:p><\/span><\/p><p>\n\n<\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">The\n\u201c<b>*<\/b>\u201d <b>Asterisk<\/b> in the SQL query refers to all the columns and rows in the\ntable. While the \u201c<b>FROM<\/b>\u201d statement\nrefers to the table from where the data needs to be fetched.<br><br><o:p><\/o:p><\/span><\/p>\n<h3><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><span style=\"font-family:Helvetica;\">2. Filtering with WHERE\nClause:<br><\/span><br><\/span><\/h3><table class=\"MsoTableMediumShading2Accent5\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"92%\" style=\"width:92.3%;background:#222A35;mso-background-themecolor:\n text2;mso-background-themeshade:128;border-collapse:collapse;border:none;\n mso-border-top-alt:solid windowtext 2.25pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n mso-yfti-tbllook:1632;mso-padding-alt:0in 5.4pt 0in 5.4pt\">\n <tbody><tr>\n  <td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border-top:solid windowtext 1.0pt;\n  border-left:none;border-bottom:solid windowtext 2.25pt;border-right:none;\n  mso-border-top-alt:solid windowtext .5pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n  <p class=\"MsoNormal\" style=\"margin-bottom:0in;margin-bottom:.0001pt;text-align:\n  justify;line-height:normal;mso-yfti-cnfc:1\"><strong><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:white;mso-themecolor:background1\">SQL<o:p><\/o:p><\/span><\/strong><\/p>\n  <\/td>\n <\/tr>\n <tr>\n  <td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border:none;\n  border-bottom:solid windowtext 1.0pt;mso-border-top-alt:double windowtext 2.25pt;\n  mso-border-top-alt:double windowtext 2.25pt;mso-border-bottom-alt:solid windowtext .5pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><\/span><\/p><span style=\"color: rgb(255, 255, 255); font-family: Helvetica;\"><p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\">SELECT\n  * FROM orders <o:p><\/o:p><\/span><\/p>\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><\/p><\/span><p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:#0070C0\">WHERE <\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><span style=\"color:#ffffff;\">order_date\n  &gt;= &#8216;2023-01-01&#8217;;<\/span> <o:p><\/o:p><\/span><\/p>\n  <\/td>\n <\/tr>\n<\/tbody><\/table>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">This\nquery retrieves orders placed after January 1, 2023.<br><br><o:p><\/o:p><\/span><\/p><p>\n\n<\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">In\nthis query there is a condition implied in the statement posing a condition to\nselect all the data from the orders table <b>where<\/b>\nthe ordering date is 1 January 2023.<br><br><o:p><\/o:p><\/span><\/p>\n<h3><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">3. Aggregating Data with\nGROUP BY:<br><br><o:p><\/o:p><\/span><\/h3><table class=\"MsoTableMediumShading2Accent5\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"92%\" style=\"width:92.3%;background:#222A35;mso-background-themecolor:\n text2;mso-background-themeshade:128;border-collapse:collapse;border:none;\n mso-border-top-alt:solid windowtext 2.25pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n mso-yfti-tbllook:1632;mso-padding-alt:0in 5.4pt 0in 5.4pt\">\n <tbody><tr>\n  <td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border-top:solid windowtext 1.0pt;\n  border-left:none;border-bottom:solid windowtext 2.25pt;border-right:none;\n  mso-border-top-alt:solid windowtext .5pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n  <p class=\"MsoNormal\" style=\"margin-bottom:0in;margin-bottom:.0001pt;text-align:\n  justify;line-height:normal;mso-yfti-cnfc:1\"><strong><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:white;mso-themecolor:background1\">SQL<o:p><\/o:p><\/span><\/strong><\/p>\n  <\/td>\n <\/tr>\n <tr>\n  <td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border:none;\n  border-bottom:solid windowtext 1.0pt;mso-border-top-alt:double windowtext 2.25pt;\n  mso-border-top-alt:double windowtext 2.25pt;mso-border-bottom-alt:solid windowtext .5pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><\/span><\/p><span style=\"color:#ffffff;\"><p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\">SELECT\n  department_id, COUNT(*) AS employee_count <o:p><\/o:p><\/span><\/p>\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><\/p><\/span><p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:#0070C0\">FROM <\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><span style=\"color:#ffffff;\">employees<\/span>\n  <o:p><\/o:p><\/span><\/p>\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:#0070C0\">GROUP BY <\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><span style=\"color:#ffffff;\">department_id;<\/span>\n  <o:p><\/o:p><\/span><\/p>\n  <\/td>\n <\/tr>\n<\/tbody><\/table>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">This\nquery counts the number of employees in each department.<o:p><\/o:p><\/span><\/p><p>\n\n<\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Here\nwe see that we have selected the \u201c<b>department_id<\/b>\u201d\ncolumn. The <b>Count (*)<\/b> function in\nthis query prompts to count the number of entries (here in this scenario the\nnumber of employees in each department as we have added the Alias function <b>AS employee_count<\/b>) from the Employees\nTable. Then the employees are grouped according to their department ids.<br><br><o:p><\/o:p><\/span><\/p>\n<h3><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">4. Joining Tables:<br><br><o:p><\/o:p><\/span><\/h3><table class=\"MsoTableMediumShading2Accent5\" border=\"1\" cellspacing=\"0\" cellpadding=\"0\" width=\"92%\" style=\"width:92.3%;background:#222A35;mso-background-themecolor:\n text2;mso-background-themeshade:128;border-collapse:collapse;border:none;\n mso-border-top-alt:solid windowtext 2.25pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n mso-yfti-tbllook:1632;mso-padding-alt:0in 5.4pt 0in 5.4pt\">\n <tbody><tr>\n  <td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border-top:solid windowtext 1.0pt;\n  border-left:none;border-bottom:solid windowtext 2.25pt;border-right:none;\n  mso-border-top-alt:solid windowtext .5pt;mso-border-bottom-alt:solid windowtext 2.25pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n  <p class=\"MsoNormal\" style=\"margin-bottom:0in;margin-bottom:.0001pt;text-align:\n  justify;line-height:normal;mso-yfti-cnfc:1\"><strong><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:white;mso-themecolor:background1\">SQL<o:p><\/o:p><\/span><\/strong><\/p>\n  <\/td>\n <\/tr>\n <tr>\n  <td width=\"100%\" nowrap=\"\" valign=\"top\" style=\"width:100.0%;border:none;\n  border-bottom:solid windowtext 1.0pt;mso-border-top-alt:double windowtext 2.25pt;\n  mso-border-top-alt:double windowtext 2.25pt;mso-border-bottom-alt:solid windowtext .5pt;\n  padding:0in 5.4pt 0in 5.4pt\">\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><\/span><\/p><span style=\"color:#ffffff;\"><p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\">SELECT\n  e.employee_id, e.first_name, e.last_name, d.department_name <o:p><\/o:p><\/span><\/p>\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><\/p><\/span><p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:#0070C0\">FROM <\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><span style=\"color:#ffffff;\">employees\n  e<\/span> <o:p><\/o:p><\/span><\/p>\n  <p class=\"MsoNormal\" style=\"margin-bottom:8.0pt;text-align:justify;line-height:\n  107%;mso-yfti-cnfc:2\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast;\n  color:#0070C0\">JOIN <\/span><span style=\"font-family:&quot;Helvetica&quot;,sans-serif;\n  mso-fareast-font-family:&quot;Times New Roman&quot;;mso-fareast-theme-font:minor-fareast\"><span style=\"color:#ffffff;\">departments\n  d ON e.department_id = d.department_id;<\/span> <o:p><\/o:p><\/span><\/p>\n  <\/td>\n <\/tr>\n<\/tbody><\/table>\n<p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">This\nquery retrieves employee details along with their department names by joining\nthe &#8217;employees&#8217; and &#8216;departments&#8217; tables.<br><br><o:p><\/o:p><\/span><\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">This\nSQL query retrieves data about employees along with the department they belong\nto. It selects the <strong>employee_id<\/strong>, <strong>first_name<\/strong>, and <strong>last_name<\/strong>\ncolumns from the <strong>employees<\/strong> table and the <strong>department_name<\/strong> column\nfrom the <strong>departments<\/strong> table. It then joins the two tables based on the <strong>department_id<\/strong>\ncolumn to associate each employee with their respective department using the\nInner JOIN function.<br><br><strong><o:p><\/o:p><\/strong><\/span><\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Congratulations!\nYou&#8217;ve taken your first steps into the world of SQL for data engineering. By\nmastering these fundamentals and practicing regularly, you&#8217;ll be well-equipped\nto handle a variety of data-related tasks and contribute effectively to\ndata-driven projects.<br><br><strong><o:p><\/o:p><\/strong><\/span><\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Remember,\nSQL is a powerful tool with endless possibilities. As you continue your\njourney, don&#8217;t hesitate to explore advanced topics such as subqueries, window\nfunctions, and performance optimization to further enhance your skills.<o:p><\/o:p><\/span><\/p><p>\n\n\n\n\n\n\n\n<\/p><p class=\"MsoNormal\" style=\"text-align:justify\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">To\nlearn more about technology, read through our blogs on our official blogging\nwebsite <\/span><a href=\"http:\/\/www.dotlabs.ai\/blogs\/\"><span style=\"font-family:\n&quot;Helvetica&quot;,sans-serif\">www.dotlabs.ai\/blogs\/<\/span><\/a><span style=\"font-family:\n&quot;Helvetica&quot;,sans-serif\">.<br><br><o:p><\/o:p><\/span><\/p>\n\n<p>Lorem Ipsum has been the industry&#8217;s standard dummy text ever since the 1500s.<\/p>\n<p class=\"MsoNormal\" style=\"margin-right:.2in;text-align:justify;line-height:\n150%\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><\/span><\/p><p style=\"text-align: justify;\"><span style=\"line-height:1.5;\"><\/span><\/p><p class=\"MsoNormal\" style=\"margin-right: 0.2in; text-align: justify;\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><\/span><\/p><p style=\"text-align: justify;\"><span style=\"line-height:1.5;\"><p class=\"MsoNormal\" style=\"margin-right: 0.2in; text-align: justify;\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Dot Labs is an IT\noutsourcing firm that offers a range of services, including software\ndevelopment, quality assurance, and data analytics. With a team of skilled\nprofessionals, Dot Labs offers nearshoring services to companies in North\nAmerica, providing cost savings while ensuring effective communication and\ncollaboration.<br><br><o:p><\/o:p><\/span><\/p><p class=\"MsoNormal\" style=\"margin-right: 0.2in; text-align: justify;\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">Visit our website: <\/span><a href=\"http:\/\/www.dotlabs.ai\/\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">www.dotlabs.ai<\/span><\/a><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">, for more information on how Dot\nLabs can help your business with its IT outsourcing needs.<br><br><o:p><\/o:p><\/span><\/p><p>\n<\/p><p class=\"MsoNormal\" style=\"margin-right: 0.2in; text-align: justify;\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">For more informative\nBlogs on the latest technologies and trends <\/span><a href=\"https:\/\/dotlabs.ai\/blogs\/\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\">click\nhere<\/span><\/a><\/p><\/span><\/p><p class=\"MsoNormal\" style=\"margin-right: 0.2in; text-align: justify;\"><a href=\"https:\/\/dotlabs.ai\/blogs\/\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><\/span><\/a><\/p><p><\/p><p class=\"MsoNormal\" style=\"margin-right:.2in;text-align:justify;line-height:\n150%\"><a href=\"https:\/\/dotlabs.ai\/blogs\/\"><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><\/span><\/a><span style=\"font-family:&quot;Helvetica&quot;,sans-serif\"><o:p><\/o:p><\/span><\/p>\n\n\n\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>Explore the intricacies of Medallion Architecture&#8217;s Bronze, Silver, and Gold layers in data lake-houses, uncovering theoretical concepts, practical applications, and technology considerations for optimal data management and integration.<\/p>\n","protected":false},"author":2,"featured_media":1443,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"pagelayer_contact_templates":[],"_pagelayer_content":"","footnotes":""},"categories":[38,37],"tags":[],"class_list":["post-1424","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-educational","category-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Fundamentals of SQL for Data Engineering | Dot Labs<\/title>\n<meta name=\"description\" content=\"Getting started with SQL for Data Engineering. Learn the fundamentals of SQL and some of the most essential Queries used in SQL in this blog.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fundamentals of SQL for Data Engineering | Dot Labs\" \/>\n<meta property=\"og:description\" content=\"Getting started with SQL for Data Engineering. Learn the fundamentals of SQL and some of the most essential Queries used in SQL in this blog.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/\" \/>\n<meta property=\"og:site_name\" content=\"Dot Blogs\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/dotlabsai\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-27T11:11:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-27T13:56:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2024\/05\/image-2.png\" \/>\n\t<meta property=\"og:image:width\" content=\"5836\" \/>\n\t<meta property=\"og:image:height\" content=\"3080\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Basim Khan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Basim Khan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/\"},\"author\":{\"name\":\"Basim Khan\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#\\\/schema\\\/person\\\/78401fb87235f953b1737839e409b455\"},\"headline\":\"Mastering SQL for Data Engineering: Essential Fundamentals and Queries\",\"datePublished\":\"2024-05-27T11:11:27+00:00\",\"dateModified\":\"2024-05-27T13:56:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/\"},\"wordCount\":722,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/image-2.png\",\"articleSection\":[\"Educational\",\"Tutorial\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/\",\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/\",\"name\":\"Fundamentals of SQL for Data Engineering | Dot Labs\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/image-2.png\",\"datePublished\":\"2024-05-27T11:11:27+00:00\",\"dateModified\":\"2024-05-27T13:56:13+00:00\",\"description\":\"Getting started with SQL for Data Engineering. Learn the fundamentals of SQL and some of the most essential Queries used in SQL in this blog.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#primaryimage\",\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/image-2.png\",\"contentUrl\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/uploads\\\/2024\\\/05\\\/image-2.png\",\"width\":5836,\"height\":3080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/2024\\\/05\\\/27\\\/fundamentals-of-sql-for-data-engineering\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mastering SQL for Data Engineering: Essential Fundamentals and Queries\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#website\",\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/\",\"name\":\"Dot Blogs\",\"description\":\"A Technology Company\",\"publisher\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#organization\",\"name\":\"Dot Labs\",\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/cropped-BlogsLogo_Gray_TransparentBG_Width320.png.png\",\"contentUrl\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/uploads\\\/2023\\\/04\\\/cropped-BlogsLogo_Gray_TransparentBG_Width320.png.png\",\"width\":320,\"height\":68,\"caption\":\"Dot Labs\"},\"image\":{\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/dotlabsai\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/dotlabs-ai\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/#\\\/schema\\\/person\\\/78401fb87235f953b1737839e409b455\",\"name\":\"Basim Khan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/litespeed\\\/avatar\\\/fe70d225f8e3da97115062685a8b183f.jpg?ver=1776875138\",\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/litespeed\\\/avatar\\\/fe70d225f8e3da97115062685a8b183f.jpg?ver=1776875138\",\"contentUrl\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/wp-content\\\/litespeed\\\/avatar\\\/fe70d225f8e3da97115062685a8b183f.jpg?ver=1776875138\",\"caption\":\"Basim Khan\"},\"sameAs\":[\"http:\\\/\\\/www.dotlabs.ai\"],\"url\":\"https:\\\/\\\/dotlabs.ai\\\/blogs\\\/author\\\/basim-khan\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fundamentals of SQL for Data Engineering | Dot Labs","description":"Getting started with SQL for Data Engineering. Learn the fundamentals of SQL and some of the most essential Queries used in SQL in this blog.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/","og_locale":"en_US","og_type":"article","og_title":"Fundamentals of SQL for Data Engineering | Dot Labs","og_description":"Getting started with SQL for Data Engineering. Learn the fundamentals of SQL and some of the most essential Queries used in SQL in this blog.","og_url":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/","og_site_name":"Dot Blogs","article_publisher":"https:\/\/www.facebook.com\/dotlabsai","article_published_time":"2024-05-27T11:11:27+00:00","article_modified_time":"2024-05-27T13:56:13+00:00","og_image":[{"width":5836,"height":3080,"url":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2024\/05\/image-2.png","type":"image\/png"}],"author":"Basim Khan","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Basim Khan","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#article","isPartOf":{"@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/"},"author":{"name":"Basim Khan","@id":"https:\/\/dotlabs.ai\/blogs\/#\/schema\/person\/78401fb87235f953b1737839e409b455"},"headline":"Mastering SQL for Data Engineering: Essential Fundamentals and Queries","datePublished":"2024-05-27T11:11:27+00:00","dateModified":"2024-05-27T13:56:13+00:00","mainEntityOfPage":{"@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/"},"wordCount":722,"commentCount":0,"publisher":{"@id":"https:\/\/dotlabs.ai\/blogs\/#organization"},"image":{"@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#primaryimage"},"thumbnailUrl":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2024\/05\/image-2.png","articleSection":["Educational","Tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/","url":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/","name":"Fundamentals of SQL for Data Engineering | Dot Labs","isPartOf":{"@id":"https:\/\/dotlabs.ai\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#primaryimage"},"image":{"@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#primaryimage"},"thumbnailUrl":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2024\/05\/image-2.png","datePublished":"2024-05-27T11:11:27+00:00","dateModified":"2024-05-27T13:56:13+00:00","description":"Getting started with SQL for Data Engineering. Learn the fundamentals of SQL and some of the most essential Queries used in SQL in this blog.","breadcrumb":{"@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#primaryimage","url":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2024\/05\/image-2.png","contentUrl":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2024\/05\/image-2.png","width":5836,"height":3080},{"@type":"BreadcrumbList","@id":"https:\/\/dotlabs.ai\/blogs\/2024\/05\/27\/fundamentals-of-sql-for-data-engineering\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dotlabs.ai\/blogs\/"},{"@type":"ListItem","position":2,"name":"Mastering SQL for Data Engineering: Essential Fundamentals and Queries"}]},{"@type":"WebSite","@id":"https:\/\/dotlabs.ai\/blogs\/#website","url":"https:\/\/dotlabs.ai\/blogs\/","name":"Dot Blogs","description":"A Technology Company","publisher":{"@id":"https:\/\/dotlabs.ai\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dotlabs.ai\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/dotlabs.ai\/blogs\/#organization","name":"Dot Labs","url":"https:\/\/dotlabs.ai\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dotlabs.ai\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2023\/04\/cropped-BlogsLogo_Gray_TransparentBG_Width320.png.png","contentUrl":"https:\/\/dotlabs.ai\/blogs\/wp-content\/uploads\/2023\/04\/cropped-BlogsLogo_Gray_TransparentBG_Width320.png.png","width":320,"height":68,"caption":"Dot Labs"},"image":{"@id":"https:\/\/dotlabs.ai\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/dotlabsai","https:\/\/www.linkedin.com\/company\/dotlabs-ai"]},{"@type":"Person","@id":"https:\/\/dotlabs.ai\/blogs\/#\/schema\/person\/78401fb87235f953b1737839e409b455","name":"Basim Khan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dotlabs.ai\/blogs\/wp-content\/litespeed\/avatar\/fe70d225f8e3da97115062685a8b183f.jpg?ver=1776875138","url":"https:\/\/dotlabs.ai\/blogs\/wp-content\/litespeed\/avatar\/fe70d225f8e3da97115062685a8b183f.jpg?ver=1776875138","contentUrl":"https:\/\/dotlabs.ai\/blogs\/wp-content\/litespeed\/avatar\/fe70d225f8e3da97115062685a8b183f.jpg?ver=1776875138","caption":"Basim Khan"},"sameAs":["http:\/\/www.dotlabs.ai"],"url":"https:\/\/dotlabs.ai\/blogs\/author\/basim-khan\/"}]}},"_links":{"self":[{"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/posts\/1424","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/comments?post=1424"}],"version-history":[{"count":16,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/posts\/1424\/revisions"}],"predecessor-version":[{"id":1446,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/posts\/1424\/revisions\/1446"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/media\/1443"}],"wp:attachment":[{"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/media?parent=1424"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/categories?post=1424"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dotlabs.ai\/blogs\/wp-json\/wp\/v2\/tags?post=1424"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}