sql

SQLで特定期間の日付一覧作る等

sql

前に上げた再帰結合をちょこっと変えただけ。 因みにSQLServer。 DECLARE @from datetime = '2001-01-01'; DECLARE @to datetime = '2012-10-01'; WITH l_date(v_date) as ( SELECT CONVERT(DATETIME,@from) v_date UNION ALL SELECT DATEADD(mm, 1, l.v_dat…

行列変換

相変わらずSQL再入門。今度は列と行入れ替えるので悩みました。[m_c] member_id color 1 赤 1 白 2 青 2 白 3 白 これを メンバーID 赤 青 白 1 ○ ○ 2 ○ ○ 3 ○ こんな感じにしたい。 そんな時は以下SQL select member_id as 'メンバーID' , CASE WHEN SUM(CA…

with使った再帰結合

今更ながらまともに長いSQLを久しぶりに見たので、結合周り再入門的な。 WITH lavels(id, name, level, path) AS (SELECT categories.id, categories.name, 1, CONVERT(varchar(255),categories.name) FROM categories WHERE categories.parent_id = 0 UNION…