Php 用相关值替换值
我有一个表,其中显示了库的详细信息,每个条目都有一个库ID,其中一个字段是Gallery\u parent,如果记录没有父项,则为0,如果记录没有父项,则为其父项的编号Php 用相关值替换值,php,sql,Php,Sql,我有一个表,其中显示了库的详细信息,每个条目都有一个库ID,其中一个字段是Gallery\u parent,如果记录没有父项,则为0,如果记录没有父项,则为其父项的编号 ID| Name | parent 1 | gallery A | 0 2 | gallery B | 0 3 | gallery C | 0 4 | gallery D | 1 5 | gallery E | 2 如何将父库编号替换为父库名称?您需要两个用户使用左连接将表自身连接起来 SELECT a.ID,
ID| Name | parent
1 | gallery A | 0
2 | gallery B | 0
3 | gallery C | 0
4 | gallery D | 1
5 | gallery E | 2
如何将父库编号替换为父库名称?您需要两个用户使用
左连接将表自身连接起来
SELECT a.ID,
a.Name,
b.Name as ParentName //-- you can apply COALESCE here
FROM tableName a
LEFT JOIN tableName b
ON a.parent = b.id
上面的答案显示了如何选择数据,如果您确实想要更新,并且如果父项是varchar,您可以执行以下操作
UPDATE gal t1
LEFT JOIN gal t2 ON t1.parent=t2.ID
SET t1.parent = t2.name
您正在尝试更改数据库的架构吗?还是只想查看每个库的父级名称?您想做什么<代码>更新
或选择
?我认为他需要替换而不是select@ErdinçÇorbacı我在考虑这个问题,但我也认为他只想选择,因为如果字段是数字的,他不能用varchar更新字段,除非他想先更改模式。哈哈,这也比我强。删除了我的答案,因为上面的内容应该能让你找到你想要的东西。@Erdinçïorbacı当你听到“替换”这个词时,并不意味着你想更新记录:染料,我只是意识到SQLFiddle演示是什么,对网站来说是新的,非常聪明,非常感谢。