如何查询数据库某一列的所有内容,不知道列名,只知道表名

想实现如下效果:selectidfromstudent我现在只知道有张表叫student,但是不知道里面有那些列名想查询student表中的第一列的所有值,想写成sele... 想实现如下效果:
select id from student 我现在只知道有张表叫student,但是不知道里面有那些列名
想查询student表中的第一列的所有值,想写成select fx(1) from student ,
请问下有没有这样的函数,如果不同数据库内置函数不同,提供sqlserver或者oracle中任意一种即可。
我还有另外一种思路,select (通过表名查询第一列的列头,查询的结果是id) from student
但是这种语句会报错,查询出来的id 和直接输入id 的类型好像不匹配。
展开
 我来答
风火姬云
2019-07-03
知道答主
回答量:3
采纳率:0%
帮助的人:1901
展开全部

假设知道表明为users,可通过union语句查出对应列的值:
如下为查出第二列,列数量为7的user表的值:

select `2` from (select 1,2,3,4,5,6,7 union select * from users)a;

如不知道列的数量可select 1,2,3,4,5,6,7,8 ... 直到sql执行成功为止.

如反引号使用失败可:

select b from (select 1,2 as b,3,4,5,6,7 union select * from users)a;
百度网友a800768
2013-08-20 · TA获得超过1841个赞
知道大有可为答主
回答量:1928
采纳率:0%
帮助的人:1723万
展开全部
select * from student where 1=2
查询结果只看到列名,没有数据
找到你想查的列再
select 列名 from student

也可以
sp_help student
追问
我就是想通过一条sql语句查询出不知道列名的列的值可以吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
p_rain2002
2013-08-20 · 超过53用户采纳过TA的回答
知道小有建树答主
回答量:145
采纳率:0%
帮助的人:126万
展开全部
利用系统表写动态sql吧,不同数据库的系统表不一样的。
追问
能具体点吗?
追答
首先要知道是什么数据库 ,sqlserver 可以如此做
select b.name
from sys.tables a,sys.syscolumns b
where a.object_id=b.id
and a.name='student'
and b.colorder=1
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hhygc
2013-08-20 · TA获得超过888个赞
知道小有建树答主
回答量:423
采纳率:100%
帮助的人:226万
展开全部
应该没有fx 这个函数吧
查询第一列应该是这样写吧

select top 1 * from student
追问
fx不是具体函数,我是想问有没有这杨一个函数存在。
select top 1 * from student 这种不行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式