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