我有一个表,其中包含字段(id、parent_id、name、created_at)。我想写一个查询来选择id,name,created_at,parent_created_at。'parent_created_at‘是与父级匹配的记录的'created_at’字段(如果有,即记录parent_id >0),否则'parent_created_at‘字段应为null。有什么建议吗?
发布于 2009-08-11 09:58:35
Self Join + ANSI SQL CASE表达式
SELECT t.id
, t.name
, t.created_at
, CASE WHEN t.parent_id > 0 THEN p.created_at ELSE NULL END AS parent_created_at
FROM Table t
JOIN Table p
ON t.id = p.parent_id
发布于 2009-08-11 13:37:33
Morpheous,
您的表中只有两行,所以请不厌其烦地给出所有的细节!您所告诉我们的就是它们的parent_ids是什么,而您的查询的连接条件取决于更多。
你能填一下..。这样我们就能知道完整的细节了吗?
CREATE TABLE t(...
INSERT INTO t VALUES (...
INSERT INTO t VALUES (...
https://stackoverflow.com/questions/1259403
复制相似问题