急急急!数据库查询问题,同表中一对多情况

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急急急!数据库查询问题,同表中一对多情况相关的知识,希望对你有一定的参考价值。

比如我同一个表,里面有一个字段对应该表另一个字段有多个显示,怎样让他们显示一起。
例表A:
brno node
001 a
001 b
001 c
002 a
002 d
想用SQL 查询出来后显示的结果是:
001 a b c
002 a d
求大神啊,急急急。
对了是在DB2里面的

参考技术A 这样的查询结果一般不是通过sql语句弄出来的,是将结果读到本地,然后再通过循环读取的。

你想,你的一个纵列表示一个字段,你现在只是举例的5条记录,如果记录非常多,那么纵列不就会非常多的啊。你还是考虑通过循环读取吧,而且也只显示部分信息,通过点击详情,然后再出来001对应的所有记录。
希望对你有用。追问

怎么实现啊

追答

你是想在网页上实现吧,你通过for循环不能把所有数据重新排列吗。

追问

不是,是先在DB2执行下。

参考技术B 使用 行转列实现追问

怎么实现啊

追答

使用sqlserver还是DB2还是oracle

追问

DB2下面。详细点啊

追答select brno,replace(char(replace(replace(xml2clob(xmlagg(xmlelement(NAME a,node||','))),'<A>',''),'</A>','')),' ','') newnode from 表名称

追问

能解释下这个数据吗

[急急急]mysql不允许插入'(单引号)??

一个asp页,目的是 向目标列插入值

目标列的类型为text

但是如果插入字符串中含有' 也就是单引号

就会报错(原来用asp插入Access数据库的时候一切正常)
ADODB.Connection.1 (0x80004005)
SQLState: 4 Native Error Code: 1064 [TCX][MyODBC]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use

插入其他东西,比如asdfsdfsdaer或者双引号、问好都没问题
只是不能含有单引号

出错原因,个人感觉应该是程序误把单引号当作asp文件中的字符串结束符
如:
strSQL = "Insert Into mdb_movie(mdb_type) Values('"&request.Form("a1")&"')"
如果其中误把a1中的内容的单引号当作了命令符,整个语句就会多余一个单引号。所以肯定会出错

就是不知道要怎么修改,才能使插入单引号不报错

谢谢

参考技术A sql中插入特殊符号时前面应该有个符号(~波浪线)来标注
例如插入~本身就应该表示成~~
你看看不知道是不是有帮助!

以上是关于急急急!数据库查询问题,同表中一对多情况的主要内容,如果未能解决你的问题,请参考以下文章

sql server 中如何查询学生表中每位学生全部科目中最高分对应的那行数据呢? 急急急 !

急急急!应用程序在sql server2005里执行的sql语句怎样查看!

急急急,Sql查询一个字段是不是存在某一个值,怎么写查询语句?

oracle简单编程问题,在线等 急急急!大大悬赏

急急急sqlserver2008中,如何统计多表的统计数。如下图每一行的数据来自一个表,总共来自8张表,在线等。

oracle子查询问题,急急急!