SQL语句;选出具有某两列的数据库表名

现有两列数据,T1,T2,想选出数据库中所有包含这两列数据的表的名称,做成一个arraylist集合,请问SQL语句怎么写?还有这个函数怎么写?... 现有两列数据,T1,T2,想选出数据库中所有包含这两列数据的表的名称,做成一个arraylist集合,请问SQL语句怎么写?还有这个函数怎么写? 展开
 我来答
老师小乔
推荐于2016-01-30 · TA获得超过3680个赞
知道大有可为答主
回答量:1985
采纳率:66%
帮助的人:692万
展开全部
数据库的信息放在master数据库中sysdatabases表中,而表的信息放在sysobjects中,列的信息放在syscolumns中。在syscolumns表中,
name,id,colid分别为字段名称,就是列名;id为表的id号;字段id号
如果我们想把某一个表的字段找出来那就用:
select * from Master.dbo.syscolumns where id=’xxxxx‘,当然,where后的id的值就是目标数据表的id 。相反,如果们想找T1和T2所在的表,那么得用连接了。
select * from sysobjects o,syscolumns c where c.name='T1' and c.id=o.id
select * from sysobjects o,syscolumns c where c.name='T2' and c.id=o.id
这样有T1列的表和有T2列的表的所有信息就选出来了
然后这两个结果集再取交集的话就是这两个列都有的表的信息了。至于函数就不写了。函数的功能语句主体应该很明确了吧。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式