Template to ask for referrals
(For freshers)
ππ
Hi [Name],
I hope this message finds you well.
My name is [Your Name], and I recently graduated with a degree in [Your Degree] from [Your University]. I am passionate about data analytics and have developed a strong foundation through my coursework and practical projects.
I am currently seeking opportunities to start my career as a Data Analyst and came across the exciting roles at [Company Name].
I am reaching out to you because I admire your professional journey and expertise in the field of data analytics. Your role at [Company Name] is particularly inspiring, and I am very interested in contributing to such an innovative and dynamic team.
I am confident that my skills and enthusiasm would make me a valuable addition to this role [Job ID / Link]. If possible, I would be incredibly grateful for your referral or any advice you could offer on how to best position myself for this opportunity.
Thank you very much for considering my request. I understand how busy you must be and truly appreciate any assistance you can provide.
Best regards,
[Your Full Name]
[Your Email Address]
(For freshers)
ππ
Hi [Name],
I hope this message finds you well.
My name is [Your Name], and I recently graduated with a degree in [Your Degree] from [Your University]. I am passionate about data analytics and have developed a strong foundation through my coursework and practical projects.
I am currently seeking opportunities to start my career as a Data Analyst and came across the exciting roles at [Company Name].
I am reaching out to you because I admire your professional journey and expertise in the field of data analytics. Your role at [Company Name] is particularly inspiring, and I am very interested in contributing to such an innovative and dynamic team.
I am confident that my skills and enthusiasm would make me a valuable addition to this role [Job ID / Link]. If possible, I would be incredibly grateful for your referral or any advice you could offer on how to best position myself for this opportunity.
Thank you very much for considering my request. I understand how busy you must be and truly appreciate any assistance you can provide.
Best regards,
[Your Full Name]
[Your Email Address]
β€4
company name: JP Morgan Chase
role: sde-1
batch: 2024/23 passouts
link:https://jpmc.fa.oraclecloud.com/hcmUI/CandidateExperience/en/sites/CX_1001/job/210667642
role: sde-1
batch: 2024/23 passouts
link:https://jpmc.fa.oraclecloud.com/hcmUI/CandidateExperience/en/sites/CX_1001/job/210667642
JPMC Candidate Experience page
Software Engineer I
Join an agile team that designs and delivers market-leading technology products in a secure and scalable way
S&P Global is hiring Data Analyst ππ₯
Experience : 0-6 Months
Location : Bangalore
Apply link : https://careers.spglobal.com/jobs/319690?lang=en-us&utm_source=linkedin
Experience : 0-6 Months
Location : Bangalore
Apply link : https://careers.spglobal.com/jobs/319690?lang=en-us&utm_source=linkedin
Data Analyst in Bangalore, India | S&P Global
S&P Global is hiring a Data Analyst in Bangalore, India. Review all of the job details and apply today!
β€1
Data Engineering Roadmap for Beginners (2025)
> Language β Python + SQL.
> OS Basics β Linux + Bash + Git.
> Data Modeling β Normalization + Star/Snowflake Schema.
> Databases β PostgreSQL + MySQL + MongoDB.
> Data Warehousing β Snowflake + BigQuery + Redshift.
> Data Processing β Apache Spark + PySpark.
> Workflow Orchestration β Airflow + Prefect.
> Data Lakes β Delta Lake + Apache Hudi + Iceberg.
> Streaming β Kafka + Flink
> Cloud Platforms β AWS (S3, Glue, EMR) / GCP (GCS, Dataflow, BigQuery) / Azure (Data Factory, Synapse).
> Data Quality/Validation β Great Expectations.
> Containerization β Docker + Kubernetes.
> Infra as Code β Terraform.
> Visualization β dbt + Looker/PowerBI/Tableau.
> Language β Python + SQL.
> OS Basics β Linux + Bash + Git.
> Data Modeling β Normalization + Star/Snowflake Schema.
> Databases β PostgreSQL + MySQL + MongoDB.
> Data Warehousing β Snowflake + BigQuery + Redshift.
> Data Processing β Apache Spark + PySpark.
> Workflow Orchestration β Airflow + Prefect.
> Data Lakes β Delta Lake + Apache Hudi + Iceberg.
> Streaming β Kafka + Flink
> Cloud Platforms β AWS (S3, Glue, EMR) / GCP (GCS, Dataflow, BigQuery) / Azure (Data Factory, Synapse).
> Data Quality/Validation β Great Expectations.
> Containerization β Docker + Kubernetes.
> Infra as Code β Terraform.
> Visualization β dbt + Looker/PowerBI/Tableau.
β€7
β
Step-by-Step Approach to Learn Data Analytics ππ§
β Excel Fundamentals:
β Master formulas, pivot tables, data validation, charts, and graphs.
β SQL Basics:
β Learn to query databases, use SELECT, FROM, WHERE, JOIN, GROUP BY, and aggregate functions.
β Data Visualization:
β Get proficient with tools like Tableau or Power BI to create insightful dashboards.
β Statistical Concepts:
β Understand descriptive statistics (mean, median, mode), distributions, and hypothesis testing.
β Data Cleaning & Preprocessing:
β Learn how to handle missing data, outliers, and data inconsistencies.
β Exploratory Data Analysis (EDA):
β Explore datasets, identify patterns, and formulate hypotheses.
β Python for Data Analysis (Optional but Recommended):
β Learn Pandas and NumPy for data manipulation and analysis.
β Real-World Projects:
β Analyze datasets from Kaggle, UCI Machine Learning Repository, or your own collection.
β Business Acumen:
β Understand key business metrics and how data insights impact business decisions.
β Build a Portfolio:
β Showcase your projects on GitHub, Tableau Public, or a personal website. Highlight the impact of your analysis.
π Tap β€οΈ for more!
β Excel Fundamentals:
β Master formulas, pivot tables, data validation, charts, and graphs.
β SQL Basics:
β Learn to query databases, use SELECT, FROM, WHERE, JOIN, GROUP BY, and aggregate functions.
β Data Visualization:
β Get proficient with tools like Tableau or Power BI to create insightful dashboards.
β Statistical Concepts:
β Understand descriptive statistics (mean, median, mode), distributions, and hypothesis testing.
β Data Cleaning & Preprocessing:
β Learn how to handle missing data, outliers, and data inconsistencies.
β Exploratory Data Analysis (EDA):
β Explore datasets, identify patterns, and formulate hypotheses.
β Python for Data Analysis (Optional but Recommended):
β Learn Pandas and NumPy for data manipulation and analysis.
β Real-World Projects:
β Analyze datasets from Kaggle, UCI Machine Learning Repository, or your own collection.
β Business Acumen:
β Understand key business metrics and how data insights impact business decisions.
β Build a Portfolio:
β Showcase your projects on GitHub, Tableau Public, or a personal website. Highlight the impact of your analysis.
π Tap β€οΈ for more!
β€10
SQL Basics for Data Analysts
SQL (Structured Query Language) is used to retrieve, manipulate, and analyze data stored in databases.
1οΈβ£ Understanding Databases & Tables
Databases store structured data in tables.
Tables contain rows (records) and columns (fields).
Each column has a specific data type (INTEGER, VARCHAR, DATE, etc.).
2οΈβ£ Basic SQL Commands
Let's start with some fundamental queries:
πΉ SELECT β Retrieve Data
πΉ WHERE β Filter Data
πΉ ORDER BY β Sort Data
πΉ LIMIT β Restrict Number of Results
πΉ DISTINCT β Remove Duplicates
Mini Task for You: Try to write an SQL query to fetch the top 3 highest-paid employees from an "employees" table.
You can find free SQL Resources here
ππ
https://t.me/codingdidi
Like this post if you want me to continue covering all the topics! πβ€οΈ
Share with credits: https://t.me/codingdidi
Hope it helps :)
#sql
SQL (Structured Query Language) is used to retrieve, manipulate, and analyze data stored in databases.
1οΈβ£ Understanding Databases & Tables
Databases store structured data in tables.
Tables contain rows (records) and columns (fields).
Each column has a specific data type (INTEGER, VARCHAR, DATE, etc.).
2οΈβ£ Basic SQL Commands
Let's start with some fundamental queries:
πΉ SELECT β Retrieve Data
SELECT * FROM employees; -- Fetch all columns from 'employees' table SELECT name, salary FROM employees; -- Fetch specific columns
πΉ WHERE β Filter Data
SELECT * FROM employees WHERE department = 'Sales'; -- Filter by department SELECT * FROM employees WHERE salary > 50000; -- Filter by salary
πΉ ORDER BY β Sort Data
SELECT * FROM employees ORDER BY salary DESC; -- Sort by salary (highest first) SELECT name, hire_date FROM employees ORDER BY hire_date ASC; -- Sort by hire date (oldest first)
πΉ LIMIT β Restrict Number of Results
SELECT * FROM employees LIMIT 5; -- Fetch only 5 rows SELECT * FROM employees WHERE department = 'HR' LIMIT 10; -- Fetch first 10 HR employees
πΉ DISTINCT β Remove Duplicates
SELECT DISTINCT department FROM employees; -- Show unique departments
Mini Task for You: Try to write an SQL query to fetch the top 3 highest-paid employees from an "employees" table.
You can find free SQL Resources here
ππ
https://t.me/codingdidi
Like this post if you want me to continue covering all the topics! πβ€οΈ
Share with credits: https://t.me/codingdidi
Hope it helps :)
#sql
Telegram
@Codingdidi
Free learning Resources For Data Analysts, Data science, ML, AI, GEN AI and Job updates, career growth, Tech updates
β€3
Medibuddy is hiring Business Analyst ππ₯
Experience : 1+ Year
Location : Bangalore
Apply link : https://MediBuddy.hire.trakstar.com/jobs/fk0px9z?pjb_hash=Y7bAmjMPq4
All the best ππ
Experience : 1+ Year
Location : Bangalore
Apply link : https://MediBuddy.hire.trakstar.com/jobs/fk0px9z?pjb_hash=Y7bAmjMPq4
All the best ππ
π¨ SQL Interview Challenge (Most Candidates Get This Wrong!)
Ques:
Can you write a query to find employees who earn more than the average salary of their own department?
π Sounds simpleβ¦ but this is where many people slip.
Ans:
SELECT e.*
FROM employees e
JOIN (
SELECT department_id, AVG(salary) AS avg_salary
FROM employees
GROUP BY department_id
) d
ON e.department_id = d.department_id
WHERE e.salary > d.avg_salary;
π Why interviewers love this:
It tests your understanding of correlated logic, aggregation, and joins.
π‘ Key insight:
The comparison is done within each department, not across the entire table.
π If this clarified a tricky concept, react with ππ₯
π² Follow this channel for more advanced, query-based SQL interview questions π
Ques:
Can you write a query to find employees who earn more than the average salary of their own department?
π Sounds simpleβ¦ but this is where many people slip.
Ans:
SELECT e.*
FROM employees e
JOIN (
SELECT department_id, AVG(salary) AS avg_salary
FROM employees
GROUP BY department_id
) d
ON e.department_id = d.department_id
WHERE e.salary > d.avg_salary;
π Why interviewers love this:
It tests your understanding of correlated logic, aggregation, and joins.
π‘ Key insight:
The comparison is done within each department, not across the entire table.
π If this clarified a tricky concept, react with ππ₯
π² Follow this channel for more advanced, query-based SQL interview questions π
β€1
Qualcomm is hiring Associate Engineer
For 2023, 2024, 2025 gards
Location: Hyderabad
https://careers.qualcomm.com/careers/job/446715365662-engineer-associate-hyderabad-telangana-india?domain=qualcomm.com
For 2023, 2024, 2025 gards
Location: Hyderabad
https://careers.qualcomm.com/careers/job/446715365662-engineer-associate-hyderabad-telangana-india?domain=qualcomm.com
Qualcomm
Engineer, Associate | Qualcomm Careers | Engineering Jobs and More | Qualcomm
Search open positions at Qualcomm. Learn more about how our culture of collaboration and robust benefits program allow our employees to live well and exceed their potential.
β€1
β
Machine Learning Interview Questions & Answers π―
1. What is the difference between supervised and unsupervised learning
Answer:
Supervised learning uses labeled data to learn a mapping from inputs to outputs (e.g., predicting house prices). Unsupervised learning finds hidden patterns or groupings in unlabeled data (e.g., customer segmentation using K-Means).
2. How do you handle missing values during feature engineering
Answer:
Common strategies include:
β Imputation: Fill missing values with mean, median, or mode
β Deletion: Remove rows or columns with excessive missing data
β Model-based: Use predictive models to estimate missing values
3. What is the bias-variance tradeoff
Answer:
Bias refers to error due to overly simplistic assumptions; variance refers to error due to model sensitivity to small fluctuations in training data. A good model balances both to avoid underfitting (high bias) and overfitting (high variance).
4. Explain how Random Forest reduces overfitting
Answer:
Random Forest uses bagging (bootstrap aggregation) and builds multiple decision trees on random subsets of data and features. It averages their predictions, reducing variance and improving generalization.
5. What is the role of cross-validation in model selection
Answer:
Cross-validation (e.g., k-fold) splits data into multiple training/testing sets to evaluate model performance more reliably. It helps prevent overfitting and ensures the model generalizes well to unseen data.
6. How does XGBoost differ from traditional boosting methods
Answer:
XGBoost uses gradient boosting with regularization (L1 and L2), tree pruning, and parallel processing. Itβs faster and more accurate than traditional boosting algorithms like AdaBoost.
7. What is the difference between L1 and L2 regularization
Answer:
β L1 (Lasso): Adds absolute value of weights to loss function, promoting sparsity
β L2 (Ridge): Adds squared value of weights, penalizing large weights and improving stability
8. How would you deploy a trained ML model
Answer:
β Serialize the model using pickle or joblib
β Create a REST API using Flask or FastAPI
β Monitor performance using metrics like latency, accuracy drift, and feedback loops
9. What is the difference between precision and recall
Answer:
β Precision: True Positives / (True Positives + False Positives)
β Recall: True Positives / (True Positives + False Negatives)
Precision focuses on correctness of positive predictions; recall focuses on capturing all actual positives.
10. What is the Q-value in reinforcement learning
Answer:
Q-value represents the expected cumulative reward of taking an action in a given state and following a policy thereafter. Itβs central to Q-learning algorithms.
β€οΈ Tap for more
1. What is the difference between supervised and unsupervised learning
Answer:
Supervised learning uses labeled data to learn a mapping from inputs to outputs (e.g., predicting house prices). Unsupervised learning finds hidden patterns or groupings in unlabeled data (e.g., customer segmentation using K-Means).
2. How do you handle missing values during feature engineering
Answer:
Common strategies include:
β Imputation: Fill missing values with mean, median, or mode
β Deletion: Remove rows or columns with excessive missing data
β Model-based: Use predictive models to estimate missing values
3. What is the bias-variance tradeoff
Answer:
Bias refers to error due to overly simplistic assumptions; variance refers to error due to model sensitivity to small fluctuations in training data. A good model balances both to avoid underfitting (high bias) and overfitting (high variance).
4. Explain how Random Forest reduces overfitting
Answer:
Random Forest uses bagging (bootstrap aggregation) and builds multiple decision trees on random subsets of data and features. It averages their predictions, reducing variance and improving generalization.
5. What is the role of cross-validation in model selection
Answer:
Cross-validation (e.g., k-fold) splits data into multiple training/testing sets to evaluate model performance more reliably. It helps prevent overfitting and ensures the model generalizes well to unseen data.
6. How does XGBoost differ from traditional boosting methods
Answer:
XGBoost uses gradient boosting with regularization (L1 and L2), tree pruning, and parallel processing. Itβs faster and more accurate than traditional boosting algorithms like AdaBoost.
7. What is the difference between L1 and L2 regularization
Answer:
β L1 (Lasso): Adds absolute value of weights to loss function, promoting sparsity
β L2 (Ridge): Adds squared value of weights, penalizing large weights and improving stability
8. How would you deploy a trained ML model
Answer:
β Serialize the model using pickle or joblib
β Create a REST API using Flask or FastAPI
β Monitor performance using metrics like latency, accuracy drift, and feedback loops
9. What is the difference between precision and recall
Answer:
β Precision: True Positives / (True Positives + False Positives)
β Recall: True Positives / (True Positives + False Negatives)
Precision focuses on correctness of positive predictions; recall focuses on capturing all actual positives.
10. What is the Q-value in reinforcement learning
Answer:
Q-value represents the expected cumulative reward of taking an action in a given state and following a policy thereafter. Itβs central to Q-learning algorithms.
β€οΈ Tap for more
β€2
Capco
Position: Financial Accounting
Qualifications: Bachelorβs/ Masterβs Degree
Experience: Freshers/ Experienced
Location: Across India
πApply Now: https://www.capco.com/en/Careers/Job%20Search/Office%20Detail?gh_jid=7427797&location=36f0686bfe4b44afa75f218f838e0fdc&department=&keywords=
Position: Financial Accounting
Qualifications: Bachelorβs/ Masterβs Degree
Experience: Freshers/ Experienced
Location: Across India
πApply Now: https://www.capco.com/en/Careers/Job%20Search/Office%20Detail?gh_jid=7427797&location=36f0686bfe4b44afa75f218f838e0fdc&department=&keywords=
β€1
Complete DSA Roadmap
|-- Basic_Data_Structures
| |-- Arrays
| |-- Strings
| |-- Linked_Lists
| |-- Stacks
| ββ Queues
|
|-- Advanced_Data_Structures
| |-- Trees
| | |-- Binary_Trees
| | |-- Binary_Search_Trees
| | |-- AVL_Trees
| | ββ B-Trees
| |
| |-- Graphs
| | |-- Graph_Representation
| | | |- Adjacency_Matrix
| | | β Adjacency_List
| | |
| | |-- Depth-First_Search
| | |-- Breadth-First_Search
| | |-- Shortest_Path_Algorithms
| | | |- Dijkstra's_Algorithm
| | | β Bellman-Ford_Algorithm
| | |
| | ββ Minimum_Spanning_Tree
| | |- Prim's_Algorithm
| | β Kruskal's_Algorithm
| |
| |-- Heaps
| | |-- Min_Heap
| | |-- Max_Heap
| | ββ Heap_Sort
| |
| |-- Hash_Tables
| |-- Disjoint_Set_Union
| |-- Trie
| |-- Segment_Tree
| ββ Fenwick_Tree
|
|-- Algorithmic_Paradigms
| |-- Brute_Force
| |-- Divide_and_Conquer
| |-- Greedy_Algorithms
| |-- Dynamic_Programming
| |-- Backtracking
| |-- Sliding_Window_Technique
| |-- Two_Pointer_Technique
| ββ Divide_and_Conquer_Optimization
| |-- Merge_Sort_Tree
| ββ Persistent_Segment_Tree
|
|-- Searching_Algorithms
| |-- Linear_Search
| |-- Binary_Search
| |-- Depth-First_Search
| ββ Breadth-First_Search
|
|-- Sorting_Algorithms
| |-- Bubble_Sort
| |-- Selection_Sort
| |-- Insertion_Sort
| |-- Merge_Sort
| |-- Quick_Sort
| ββ Heap_Sort
|
|-- Graph_Algorithms
| |-- Depth-First_Search
| |-- Breadth-First_Search
| |-- Topological_Sort
| |-- Strongly_Connected_Components
| ββ Articulation_Points_and_Bridges
|
|-- Dynamic_Programming
| |-- Introduction_to_DP
| |-- Fibonacci_Series_using_DP
| |-- Longest_Common_Subsequence
| |-- Longest_Increasing_Subsequence
| |-- Knapsack_Problem
| |-- Matrix_Chain_Multiplication
| ββ Dynamic_Programming_on_Trees
|
|-- Mathematical_and_Bit_Manipulation_Algorithms
| |-- Prime_Numbers_and_Sieve_of_Eratosthenes
| |-- Greatest_Common_Divisor
| |-- Least_Common_Multiple
| |-- Modular_Arithmetic
| ββ Bit_Manipulation_Tricks
|
|-- Advanced_Topics
| |-- Trie-based_Algorithms
| | |-- Auto-completion
| | ββ Spell_Checker
| |
| |-- Suffix_Trees_and_Arrays
| |-- Computational_Geometry
| |-- Number_Theory
| | |-- Euler's_Totient_Function
| | ββ Mobius_Function
| |
| ββ String_Algorithms
| |-- KMP_Algorithm
| ββ Rabin-Karp_Algorithm
|
|-- OnlinePlatforms
| |-- LeetCode
| |-- HackerRank
Tap β€οΈ for more!
|-- Basic_Data_Structures
| |-- Arrays
| |-- Strings
| |-- Linked_Lists
| |-- Stacks
| ββ Queues
|
|-- Advanced_Data_Structures
| |-- Trees
| | |-- Binary_Trees
| | |-- Binary_Search_Trees
| | |-- AVL_Trees
| | ββ B-Trees
| |
| |-- Graphs
| | |-- Graph_Representation
| | | |- Adjacency_Matrix
| | | β Adjacency_List
| | |
| | |-- Depth-First_Search
| | |-- Breadth-First_Search
| | |-- Shortest_Path_Algorithms
| | | |- Dijkstra's_Algorithm
| | | β Bellman-Ford_Algorithm
| | |
| | ββ Minimum_Spanning_Tree
| | |- Prim's_Algorithm
| | β Kruskal's_Algorithm
| |
| |-- Heaps
| | |-- Min_Heap
| | |-- Max_Heap
| | ββ Heap_Sort
| |
| |-- Hash_Tables
| |-- Disjoint_Set_Union
| |-- Trie
| |-- Segment_Tree
| ββ Fenwick_Tree
|
|-- Algorithmic_Paradigms
| |-- Brute_Force
| |-- Divide_and_Conquer
| |-- Greedy_Algorithms
| |-- Dynamic_Programming
| |-- Backtracking
| |-- Sliding_Window_Technique
| |-- Two_Pointer_Technique
| ββ Divide_and_Conquer_Optimization
| |-- Merge_Sort_Tree
| ββ Persistent_Segment_Tree
|
|-- Searching_Algorithms
| |-- Linear_Search
| |-- Binary_Search
| |-- Depth-First_Search
| ββ Breadth-First_Search
|
|-- Sorting_Algorithms
| |-- Bubble_Sort
| |-- Selection_Sort
| |-- Insertion_Sort
| |-- Merge_Sort
| |-- Quick_Sort
| ββ Heap_Sort
|
|-- Graph_Algorithms
| |-- Depth-First_Search
| |-- Breadth-First_Search
| |-- Topological_Sort
| |-- Strongly_Connected_Components
| ββ Articulation_Points_and_Bridges
|
|-- Dynamic_Programming
| |-- Introduction_to_DP
| |-- Fibonacci_Series_using_DP
| |-- Longest_Common_Subsequence
| |-- Longest_Increasing_Subsequence
| |-- Knapsack_Problem
| |-- Matrix_Chain_Multiplication
| ββ Dynamic_Programming_on_Trees
|
|-- Mathematical_and_Bit_Manipulation_Algorithms
| |-- Prime_Numbers_and_Sieve_of_Eratosthenes
| |-- Greatest_Common_Divisor
| |-- Least_Common_Multiple
| |-- Modular_Arithmetic
| ββ Bit_Manipulation_Tricks
|
|-- Advanced_Topics
| |-- Trie-based_Algorithms
| | |-- Auto-completion
| | ββ Spell_Checker
| |
| |-- Suffix_Trees_and_Arrays
| |-- Computational_Geometry
| |-- Number_Theory
| | |-- Euler's_Totient_Function
| | ββ Mobius_Function
| |
| ββ String_Algorithms
| |-- KMP_Algorithm
| ββ Rabin-Karp_Algorithm
|
|-- OnlinePlatforms
| |-- LeetCode
| |-- HackerRank
Tap β€οΈ for more!
β€7π1
π§ Scenario-Based SQL Interview Question (Asked Often)
π Scenario:
Youβre a Data Analyst at an e-commerce company.
Thereβs an orders table with these columns:
order_id, customer_id, order_date, order_amount
π Interview Question:
Find customers who placed more than 1 order on the same day, and show the total amount they spent on that day.
β³ Take 10 seconds. How would you think?
β SQL Approach
1οΈβ£ Group data by customer_id and order_date
2οΈβ£ Count orders per day
3οΈβ£ Sum total order value
4οΈβ£ Filter customers with more than one order
π‘ SQL Query
SELECT
customer_id,
order_date,
COUNT(order_id) AS total_orders,
SUM(order_amount) AS total_spent
FROM orders
GROUP BY customer_id, order_date
HAVING COUNT(order_id) > 1;
Drop a π₯ if you want tougher SQL questions next
π Scenario:
Youβre a Data Analyst at an e-commerce company.
Thereβs an orders table with these columns:
order_id, customer_id, order_date, order_amount
π Interview Question:
Find customers who placed more than 1 order on the same day, and show the total amount they spent on that day.
β³ Take 10 seconds. How would you think?
β SQL Approach
1οΈβ£ Group data by customer_id and order_date
2οΈβ£ Count orders per day
3οΈβ£ Sum total order value
4οΈβ£ Filter customers with more than one order
π‘ SQL Query
SELECT
customer_id,
order_date,
COUNT(order_id) AS total_orders,
SUM(order_amount) AS total_spent
FROM orders
GROUP BY customer_id, order_date
HAVING COUNT(order_id) > 1;
Drop a π₯ if you want tougher SQL questions next
β€2π₯2
π PYTHON TRICK #1
β Wrong way:
β Right way:
π‘ 5 lines β 1 line!
In the first (wrong/long) way, we are using a traditional loop. Python reads each number one by one, performs the square operation, and then manually adds the result into a list using append(). This works perfectly fine, but itβs longer, slower to write, and less βPythonic.β When code grows bigger, these extra lines make programs harder to read.
Now look at the second (right) way β this is called a List Comprehension. It combines loop + expression + list creation into a single clean line:
π squares = [num**2 for num in [1,2,3,4,5]]
Python is designed to read almost like English. This line literally means:
βFor every number in the list, square it, and store the result in a new list.β
π Why List Comprehensions are powerful:
βοΈ Shorter code
βοΈ Easier to read once you practice
βοΈ Faster execution in many cases
βοΈ Used heavily in Data Science & AI
βοΈ Makes you look like a pro Python developer
This is the difference between just writing code and writing smart Python code π»π₯
Start using this habit in small problems, and soon itβll become your natural style.
Share with Credit https://t.me/codingdidi
Tap β€οΈ for more!
β Wrong way:
squares = [ ]
for num in [1,2,3,4,5]:
squares.append(num**2)
β Right way:
squares = [num**2 for num in [1,2,3,4,5]]
π‘ 5 lines β 1 line!
In the first (wrong/long) way, we are using a traditional loop. Python reads each number one by one, performs the square operation, and then manually adds the result into a list using append(). This works perfectly fine, but itβs longer, slower to write, and less βPythonic.β When code grows bigger, these extra lines make programs harder to read.
Now look at the second (right) way β this is called a List Comprehension. It combines loop + expression + list creation into a single clean line:
π squares = [num**2 for num in [1,2,3,4,5]]
Python is designed to read almost like English. This line literally means:
βFor every number in the list, square it, and store the result in a new list.β
π Why List Comprehensions are powerful:
βοΈ Shorter code
βοΈ Easier to read once you practice
βοΈ Faster execution in many cases
βοΈ Used heavily in Data Science & AI
βοΈ Makes you look like a pro Python developer
This is the difference between just writing code and writing smart Python code π»π₯
Start using this habit in small problems, and soon itβll become your natural style.
Share with Credit https://t.me/codingdidi
Tap β€οΈ for more!
Telegram
@Codingdidi
Free learning Resources For Data Analysts, Data science, ML, AI, GEN AI and Job updates, career growth, Tech updates
β€1
π° EARNING TIP #1
I recently shared about this on my instagram channel, So here's the process
Reddit se freelance kaam milta hai! Yahan start karo:
π― r/forhire
π― r/slavelabour
Process:
1οΈβ£ Account banao
2οΈβ£ Karma build karo (help people)
3οΈβ£ Browse daily
4οΈβ£ Reply fast
5οΈβ£ Get paid directly!
Per project: $20-100 (βΉ1,700-8,400)
Share with Credit https://t.me/codingdidi
Tap β€οΈ for more!
I recently shared about this on my instagram channel, So here's the process
Reddit se freelance kaam milta hai! Yahan start karo:
π― r/forhire
π― r/slavelabour
Process:
1οΈβ£ Account banao
2οΈβ£ Karma build karo (help people)
3οΈβ£ Browse daily
4οΈβ£ Reply fast
5οΈβ£ Get paid directly!
Per project: $20-100 (βΉ1,700-8,400)
Share with Credit https://t.me/codingdidi
Tap β€οΈ for more!
Telegram
@Codingdidi
Free learning Resources For Data Analysts, Data science, ML, AI, GEN AI and Job updates, career growth, Tech updates
β€2π1
SQL Interview Trap π¨ Consecutive Orders Logic
You have a table:
orders
order_id | customer_id | order_date | amount
π Question:
Find customers who placed orders on 3 or more consecutive days,
but return only the first date of each such streak per customer.
β οΈ No temp tables.
β οΈ Assume multiple orders per day are possible.
π§ Most candidates fail because they:
- Forget to handle multiple orders on the same day
- Misuse ROW_NUMBER()
- Miss the date gap logic
β Correct SQL Solution:
WITH distinct_orders AS (
SELECT DISTINCT customer_id, order_date
FROM orders
),
grp AS (
SELECT
customer_id,
order_date,
order_date - INTERVAL '1 day' *
ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY order_date) AS grp_id
FROM distinct_orders
)
SELECT
customer_id,
MIN(order_date) AS streak_start_date
FROM grp
GROUP BY customer_id, grp_id
HAVING COUNT(*) >= 3;
π‘ Why this works (Interview Gold):
- DISTINCT removes same-day duplicates
- ROW_NUMBER() creates a sequence
- Date minus row number groups consecutive dates
- HAVING COUNT(*) >= 3 filters valid streaks
π₯ React with π₯ if this bent your brain
Share with Credit https://t.me/codingdidi
π Follow the channel for REAL interview-level SQL Content
You have a table:
orders
order_id | customer_id | order_date | amount
π Question:
Find customers who placed orders on 3 or more consecutive days,
but return only the first date of each such streak per customer.
β οΈ No temp tables.
β οΈ Assume multiple orders per day are possible.
π§ Most candidates fail because they:
- Forget to handle multiple orders on the same day
- Misuse ROW_NUMBER()
- Miss the date gap logic
β Correct SQL Solution:
WITH distinct_orders AS (
SELECT DISTINCT customer_id, order_date
FROM orders
),
grp AS (
SELECT
customer_id,
order_date,
order_date - INTERVAL '1 day' *
ROW_NUMBER() OVER (PARTITION BY customer_id ORDER BY order_date) AS grp_id
FROM distinct_orders
)
SELECT
customer_id,
MIN(order_date) AS streak_start_date
FROM grp
GROUP BY customer_id, grp_id
HAVING COUNT(*) >= 3;
π‘ Why this works (Interview Gold):
- DISTINCT removes same-day duplicates
- ROW_NUMBER() creates a sequence
- Date minus row number groups consecutive dates
- HAVING COUNT(*) >= 3 filters valid streaks
π₯ React with π₯ if this bent your brain
Share with Credit https://t.me/codingdidi
π Follow the channel for REAL interview-level SQL Content
Telegram
@Codingdidi
Free learning Resources For Data Analysts, Data science, ML, AI, GEN AI and Job updates, career growth, Tech updates
π₯3β€1