Posts

Showing posts from April, 2021

Java Program to find Second Largest Number in an Array

Solution: Before diving into the solution, let me tell you this the most common question which gets asked in the most coding rounds and if you are being lazy to practice and learn this now, you are fooling yourself. Learn the logic behind this and you'll also realize after cracking the logic of this code you have learned a beautiful algorithm from DSA, but you have to figure out that yourself. public class SecondLargestInArrayExample{ public static int getSecondLargest(int[] a, int total){ int temp; for (int i = 0; i < total; i++)      {           for (int j = i + 1; j < total; j++)           {                if (a[i] > a[j])                {                    ...

Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique emails based on its smallest Id.

This one is little tricky problem. I tried to use subquery approach to solve this problem.   +----+------------------+ | Id | Email | +----+------------------+ | 1 | john@example.com | | 2 | bob@example.com | | 3 | john@example.com | +----+------------------+ Id is the primary key column for this table. For example, after running your query, the above  Person  table should have the following rows: +----+------------------+ | Id | Email | +----+------------------+ | 1 | john@example.com | | 2 | bob@example.com | +----+------------------+ Note: Your output is the whole  Person  table after executing your sql. Use  delete  statement. Solution: DELETE FROM Person WHERE Id NOT IN ( SELECT p . id FROM ( SELECT MIN (Id) as id FROM Person GROUP BY Email) as p);

Combine Tables. [Leetcode Problem]

  1. Combine Tables. [Leetcode problem]  T able:   Person +-------------+---------+ | Column Name | Type | +-------------+---------+ | PersonId | int | | FirstName | varchar | | LastName | varchar | +-------------+---------+ PersonId is the primary key column for this table. Table:  Address +-------------+---------+ | Column Name | Type | +-------------+---------+ | AddressId | int | | PersonId | int | | City | varchar | | State | varchar | +-------------+---------+ AddressId is the primary key column for this table.   Write a SQL query for a report that provides the following information for each person in the Person table, regardless if there is an address for each of those people: FirstName, LastName, City, State Ref: https://leetcode.com/problems/combine-two-tables/  Solution:   A common mistake would be to use INNER JOIN and not LEFT (or RIGHT) JOIN and ending up omitting records with no addresses but a...