SQL新手求助:如何基于现有表新增父进程路径列ppath?
解决方案:通过自连接获取父进程路径
你可以使用自连接(将表与自身关联)来实现需求,具体SQL语句如下(假设你的表名为processes,请替换为实际表名):
SELECT p.pid, p.ppid, p.path, parent_p.path AS ppath FROM processes p LEFT JOIN processes parent_p ON p.ppid = parent_p.pid;
说明:
- 使用
LEFT JOIN而非INNER JOIN,是为了保留那些没有对应父进程的行(比如pid=120的记录,其ppid=230在表中不存在,此时ppath会返回空值,符合你的期望输出)。 - 自连接时给表取别名
p(当前进程)和parent_p(父进程),避免字段冲突。
内容的提问来源于stack exchange,提问作者Kunal
相关产品推荐
相关产品推荐

