公交线路查询问题“子查询返回的值不止一个……”

bing475879749 2010-07-07 09:11:01
下面是建好的表和数据

--表名gongjiao:公交线路
--num:车次
--xianlu:线路,按此车次的站台顺序排列,用","隔开
--info:车次信息
CREATE TABLE [dbo].[gongjiao](
[id] [int] IDENTITY(1,1) NOT NULL,
[num] [nvarchar](20) COLLATE Chinese_PRC_CI_AS NULL,
[xianlu] [nvarchar](2000) COLLATE Chinese_PRC_CI_AS NULL,
[info] [nvarchar](2000) COLLATE Chinese_PRC_CI_AS NULL,
PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

--表名zhan:站台
--area:站台名
--near:站台附近的标志性建筑,多个用","隔开
--vr:站台附近的实景图链接
CREATE TABLE [dbo].[zhan](
[id] [int] IDENTITY(1,1) NOT NULL,
[area] [varchar](200) COLLATE Chinese_PRC_CI_AS NULL,
[near] [varchar](500) COLLATE Chinese_PRC_CI_AS NULL,
[vr] [varchar](150) COLLATE Chinese_PRC_CI_AS NULL,
CONSTRAINT [PK_zhan] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
SET ANSI_PADDING OFF

GO


insert into gongjiao select '22路','5,2,1,4,3','火车站——某某大学 时间:7:00——22:00'
union all select '36路','5,2,7,8,3','火车站——某某大学 时间:7:00——18:00'
union all select '18路','5,2,5,1,6','火车站——开发区 时间:7:00——21:45'


insert zhan select '站台1','',''
union all select '站台2','',''
union all select '某某大学','肯德基,沃尔玛','domain.gif'
union all select '站台4','',''
union all select '火车站','步行街,某某购物广场',''
union all select '开发区','某某广场',''
union all select '站台7','',''
union all select '站台8','',''

GO


我用下面的SQL语句示意我的需求
select id,area,near,vr,num=(select top 1 num from gongjiao where CHARINDEX(','+RTRIM(a.id)+',',','+xianlu+',')>0 ) 
from zhan as a


我想查出经过每个站台的都有哪几路车,比如经过“火车站”的有22路,18路,36路,用","隔开放到num字段里,问题是不能查多条记录,不知道怎么弄,期待高手!
...全文
94 3 打赏 收藏 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
SQL77 2010-07-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 josy 的回复:]
SQL code
select id,area,near,vr,
num=stuff((select ','+num from gongjiao where CHARINDEX(','+RTRIM(a.id)+',',','+xianlu+',')>0 for xml path('')),1,1,'')
from zhan as a
group by id,area,near,vr

……
[/Quote]
.............
百年树人 2010-07-07
  • 打赏
  • 举报
回复
select id,area,near,vr,
num=stuff((select ','+num from gongjiao where CHARINDEX(','+RTRIM(a.id)+',',','+xianlu+',')>0 for xml path('')),1,1,'')
from zhan as a
group by id,area,near,vr

/**
id area near vr num
----------- ---------- -------------------- -------------------- -------------------------------------------------
1 站台1 22路,18路
2 站台2 22路,36路,18路
3 某某大学 肯德基,沃尔玛 domain.gif 22路,36路
4 站台4 22路
5 火车站 步行街,某某购物广场 22路,36路,18路
6 开发区 某某广场 18路
7 站台7 36路
8 站台8 36路

(8 行受影响)
**/
【变分多谐波对偶模式追踪】从噪声信号中提取重复瞬态分量的方法(Matlab代码实现)内容概要:本文介绍了“变分多谐波对偶模式追踪”这一信号处理方法,旨在从含有噪声的信号中有效提取重复出现的瞬态成分。该方法结合了变分模态分解与多谐波分析的优势,通过构建对偶模式追踪模型,实现了对微弱瞬态特征的精准分离与增强,特别适用于机械故障诊断、生物医学信号处理等领域。文中详细阐述了算法原理、数学模型构建及其实现步骤,并提供了基于Matlab的代码实现,便于读者复现与应用。; 适合人群:具备一定信号处理基础,从事机械故障诊断、生物医学工程或相关领域的研究生及科研人员。; 使用场景及目标:①从强噪声背景中提取机械设备的周期性冲击信号以进行故障预警;②分析生物医学信号中的重复生理事件,如心电图或脑电图中的特定波形;③为需要高精度瞬态特征提取的研究提供可靠的算法支持与实现范例。; 阅读建议:此资源以Matlab代码实现为核心,不仅展示了算法的具体编程细节,还强调了理论与实践的紧密结合。学习者应在理解算法原理的基础上,动手运行并调试所提供的代码,通过改变参数观察结果变化,从而深入掌握该方法的应用技巧与优化策略。
【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究(Matlab代码实现)内容概要:本文研究了非线性值迭代自适应动态规划(ADP)方法,旨在解决离散时间非线性系统的最优控制问题。通过构建近似动态规划框架,结合值迭代算法,利用函数逼近器(如神经网络)对系统代价函数进行学习与优化,逐步逼近最优控制策略。文中详细阐述了算法的数学推导、收敛性分析及其实现流程,并以典型非线性系统为例,采用Matlab进行仿真验证,展示了该方法在处理复杂非线性系统优化控制方面的有效性与优越性。; 适合人群:具备自动控制理论、最优化方法及Matlab编程基础的研究生、科研人员以及从事智能控制、工业自动化等相关领域的工程技术人员。; 使用场景及目标:①研究和解决离散时间非线性系统的最优控制问题;②学习和掌握自适应动态规划(ADP)及值迭代算法的核心思想与实现技巧;③利用Matlab进行先进控制算法的仿真与验证,为复杂系统控制设计提供理论依据和技术支持。; 阅读建议:此资源侧重于理论与实践的结合,建议读者在学习过程中,不仅关注算法的数学推导,更要动手实践Matlab代码,通过调整参数、更换被控对象等方式加深理解,并尝试将其应用于其他类型的非线性系统控制问题中。

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧