【发布时间】:2009-08-11 09:52:50
【问题描述】:
我有一个包含字段(id、parent_id、name、created_at)的表。我想写一个查询来选择id、name、created_at、parent_created_at。 'parent_created_at' 是匹配父记录的 'created_at' 字段(如果它有一个 - 即记录 parent_id > 0),否则 'parent_created_at' 字段应该为空。有什么建议吗?
【问题讨论】:
标签: sql
我有一个包含字段(id、parent_id、name、created_at)的表。我想写一个查询来选择id、name、created_at、parent_created_at。 'parent_created_at' 是匹配父记录的 'created_at' 字段(如果它有一个 - 即记录 parent_id > 0),否则 'parent_created_at' 字段应该为空。有什么建议吗?
【问题讨论】:
标签: sql
自连接 + 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
【讨论】:
多变的,
您的表格中只有两行,所以请麻烦您提供所有详细信息!您告诉我们的只是它们的 parent_id 是什么,而您的查询的连接条件不仅仅取决于此。
您能否填写下面的 ... 以便我们了解完整详细信息?
CREATE TABLE t(...
INSERT INTO t VALUES (...
INSERT INTO t VALUES (...
【讨论】: