比如:
老师表
id name age type
1 张三 20 Java
2 李四 21 C#
学生表
id name age C# Java
1 王五 12 2 1
如何把C#中的2和Java中的1替换为张三和李四呢
看似行转列
update 学生表 set c#='张三',Java='李四'
是的,没错
...不是用update的
你的表不符合实际啊,这样没有理论依据啊,怎么做,只有是做的出结果不管方法啦
1 王五 12 张三 李四 这条数据是什么意思?对吧。
UPDATE s SET "c#"=(select t.name from t join s on t.id=s."c#"), java=(select t.name from t join s on t.id=s.java)可能有些数据转换错误,自己调下
select a.id, a.name ,a.age ,
( select name form 老师表 where C#= a.C# ),
( select name form where 老师表 where Java =a.java) from 学生表 a
select Id,Name,Age, t2.Name, t3.Name from [学生表] t1 left join [老师表] t2 on t1.C# = t2.id left join [老师表] t3 on t1.Java = t3.id 连接查询。