求SQL语句,一个字段中多个ID,如何对他进行对应的值替换?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求SQL语句,一个字段中多个ID,如何对他进行对应的值替换?相关的知识,希望对你有一定的参考价值。

table 1 : id xhdxlsx1 0012 001,0023 001,002,003 table 2:id qymc001 数学002 体育003 美术 要求结果 id qymc1 数学2 数学,体育3 数学,体育,美术两个表,表1字段code存了多个表2中的id,按照图片上是语句提示:数据类型 varchar 和 text 在 add 运算符中不兼容。应该怎么解决?

参考技术A 说简单点,就是','和t2.qymc他俩无法用“+”进行连接,因为','是varchar类型,qymc是text类型
那地方改成','+cast(t2.qymc as varchar)
其他地方有类似情况也改一下

mysql一个表中多个字段对应另一个表的id如何查询?

比如有如下2个表 a 和b
a
aID b1ID b2ID b3ID
1 1 3 5

2 2 4 6
b
bID bCon
1 苹果
2 香蕉
3 国内
4 国外
5 出口
6 进口
其中a表中的b1ID,b2ID,b3ID都对应b表的bID

现在要查询a表的第一条数据,期望查询到的结果如下
aID b1ID b1Con b2ID b2Con b3ID b3Con
1 1 苹果 3 国内 5 出口

请问具体sql语句该怎么写?

SELECT m.aid,m.b1id,n.bcon,m.b2id as b2id,o.bcon as b2con, m.b3id as b3id,p.bcon as b3con FROM `test` as m INNER JOIN test1 as n on m.b1id=n.bid INNER JOIN test1 as o on m.b2id=o.bid INNER JOIN test1 as p on m.b3id=p.bid;

结果:

参考技术A select n.aid, m.bid ,m.bcon , l.bid,l.bcon,o.bid ,o.bcon from
a n join b m on n.b1id=m.bid
join b l on n.b2id=l.bid
join b o on n.b3id=o.bid

以上是关于求SQL语句,一个字段中多个ID,如何对他进行对应的值替换?的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL怎么将表中的A字段值更新B字段值?求sql语句

mysql一个表中多个字段对应另一个表的id如何查询?

sql 多表关联查询

sql 当中 如何查询某个字段中的值的第几个字符中含有相应的值

如何用一句sql语句实现查取值的和小于某个范围的所有值

若sql语句中order by指定了多个字段,则怎么排序?