Thursday, January 1, 2026

SQL vs Pandas CheetSheet

 

1. Basic Selection

SQL Pandas

SELECT * FROM table df

SELECT col FROM table df['col']

SELECT col1, col2 FROM table         df[['col1','col2']]

SELECT DISTINCT col FROM table df['col'].unique()

SELECT COUNT(*) FROM table len(df)



2. WHERE / Filtering

SQL Pandas

WHERE col = 'A'         df[df['col']=='A']

WHERE col != 'A'         df[df['col']!='A']

WHERE col > 10 df[df['col']>10]

WHERE col BETWEEN 5 AND 10 df[df['col'].between(5,10)]

WHERE col IN ('A','B')         df[df['col'].isin(['A','B'])]

WHERE col IS NULL df[df['col'].isna()]

WHERE col IS NOT NULL df[df['col'].notna()]


3. LIKE / String Matching

SQL Pandas

LIKE '%text%' df['col'].str.contains('text')

LIKE 'text%'         df['col'].str.startswith('text')

LIKE '%text'         df['col'].str.endswith('text')

UPPER(col) df['col'].str.upper()

LOWER(col) df['col'].str.lower()

TRIM(col) df['col'].str.strip()

SUBSTR(col,1,3)         df['col'].str[:3]

REPLACE(col,'A','B')         df['col'].str.replace('A','B')



4. Logical Conditions

SQL / Explanation         Pandas

AND                                         &

OR                                         |

NOT                                         ~

Example: WHERE a='X' AND b='Y' df[(df['a']=='X') & (df['b']=='Y')]



5. ORDER BY / LIMIT

SQL Pandas

ORDER BY col ASC df.sort_values('col')

ORDER BY col DESC df.sort_values('col', ascending=False)

FETCH FIRST 10 ROWS df.head(10)

OFFSET 10 ROWS df.iloc[10:]



6. GROUP BY / Aggregation

SQL Pandas

GROUP BY col df.groupby('col')

COUNT(*) df.groupby('col').size()

SUM(col) df['col'].sum()

AVG(col) df['col'].mean()

MIN(col) df['col'].min()

MAX(col) df['col'].max()


7. JOINs

SQL         Pandas

INNER JOIN         pd.merge(df1, df2, how='inner')

LEFT JOIN         pd.merge(df1, df2, how='left')

RIGHT JOIN         pd.merge(df1, df2, how='right')

FULL OUTER JOIN         pd.merge(df1, df2, how='outer')



8. UPDATE / DELETE

SQL         Pandas

UPDATE table SET col='X'                 df['col']='X'

DELETE FROM table WHERE col='A'         df = df[df['col']!='A']



9. INSERT

SQL             Pandas

INSERT INTO table VALUES (...)             df.loc[len(df)] = [...]

INSERT SELECT             df = pd.concat([df,new_df])



10. CASE WHEN

SQL Pandas

CASE WHEN col>10 THEN 'Y' ELSE 'N' END df['new'] = df['col'].apply(lambda x: 'Y' if x>10 else 'N')



11. Date & Time

SQL Pandas

SYSDATE pd.Timestamp.now()

EXTRACT(YEAR FROM col) df['col'].dt.year

TRUNC(date) df['col'].dt.floor('D')

DATE + 1 df['col'] + pd.Timedelta(days=1)



12. Metadata / Structure

SQL Pandas

DESCRIBE table df.info()

COUNT(DISTINCT col) df['col'].nunique()

SHOW COLUMNS df.columns



13. Export / Save

Operation Pandas

Export CSV df.to_csv('file.csv', index=False)

Export Excel df.to_excel('file.xlsx', index=False)

Export JSON df.to_json('file.json', orient='records', indent=2)

No comments:

Post a Comment