SQL 实战指南:Claude Code 实战指南
了解sql practical guide:Claude Code 实战. 包含实用技巧和代码示例。
SQL查询优化を通过 Claude Code 实践
数据库の性能問題は多くの项目で発生します。借助 Claude Code,遅い查询の原因特定から索引设计まで、SQLの优化を高效地進められます。
スロー查询の分析
実行計画の読み方
> 以下查询が遅い原因を分析して:
> SELECT u.*, COUNT(o.id) as order_count
> FROM users u
> LEFT JOIN orders o ON u.id = o.user_id
> WHERE u.created_at > '2025-01-01'
> GROUP BY u.id
> ORDER BY order_count DESC
> LIMIT 20;
Claude Code 実行計画(EXPLAIN ANALYZE)の結果を貼り付けると、ボトルネックを特定して改善案を提示してくれます。
-- 改善後:必要なカラムのみ選択、インデックス活用
SELECT
u.id,
u.name,
u.email,
COUNT(o.id) as order_count
FROM users u
LEFT JOIN orders o ON u.id = o.user_id
WHERE u.created_at > '2025-01-01'
GROUP BY u.id, u.name, u.email
ORDER BY order_count DESC
LIMIT 20;
-- 推奨インデックス
CREATE INDEX idx_users_created_at ON users(created_at);
CREATE INDEX idx_orders_user_id ON orders(user_id);
索引设计
複合索引の优化
> 以下搜索条件に最適な索引を设计して:
> - status + created_at での範囲搜索
> - category + price での筛选 + 排序
-- 等価条件を先、範囲条件を後に配置
CREATE INDEX idx_products_status_created
ON products(status, created_at DESC);
-- カバリングインデックスで追加のテーブルアクセスを回避
CREATE INDEX idx_products_category_price
ON products(category, price)
INCLUDE (name, description);
Claude Code 「カーディナリティの高いカラムを先にする」「範囲搜索カラムは索引の末尾にする」といった设计原則も合わせて説明してくれます。
N+1問題の検出と解消
> 这个ORMコードにN+1問題がないか确认して:
// N+1問題あり
const users = await prisma.user.findMany();
for (const user of users) {
const orders = await prisma.order.findMany({
where: { userId: user.id },
});
}
// 改善後:includeで一括获取
const users = await prisma.user.findMany({
include: {
orders: true,
},
});
ウィンドウ函数の活用
複雑な汇总やランキング查询は、ウィンドウ函数使用ことでサブ查询より高效地記述可以。
-- 各カテゴリ内での売上ランキング
SELECT
product_name,
category,
revenue,
RANK() OVER (PARTITION BY category ORDER BY revenue DESC) as rank,
SUM(revenue) OVER (PARTITION BY category) as category_total
FROM product_sales;
パーティショニング
大量数据の表格にはパーティショニングも有效です。让 Claude Code「这个表格を月ごとにパーティション分割して」と依頼すると、合适的パーティション戦略を提案してくれます。
总结
借助 Claude Code,SQL查询のボトルネック分析から索引设计、ORMレベルでの优化まで一貫して改善可以。数据库迁移やPrisma ORM活用也建议一并参考。
SQL性能的详细信息请参阅Use The Index, Luke。
#Claude Code
#SQL
#database
#performance
#optimization
Related Posts
Use Cases
Use Cases
用 Claude Code 加速个人项目开发【附实战案例】
详解如何用 Claude Code 大幅提升个人项目的开发速度。包含从创意到上线的完整实战案例和工作流。
Use Cases
Use Cases
如何用 Claude Code 自动化代码重构
详解如何利用 Claude Code 高效完成代码重构自动化。包含实用提示词和真实项目中的重构模式。
Use Cases
Use Cases
Complete CORS Configuration Guide:Claude Code 实战指南
了解complete cors configuration guide:Claude Code 实战. 包含实用技巧和代码示例。