阿宅. 发表于 2009-1-9 12:00

sql列名表示请教

大家好,请教一个问题
我有a表
字段名如下
a,b,c,d......,z
b表
字段名如下
a,ab,ac,ad,....az
我select的时候想不要其中几个字段,例如,我不要z和zz
除了列举字段名的方法,如
slect a,b,c,d....,y ,ab,ac,ad,....ay from a,b的方法,还有没排除的方法,因为字段太多了,一一例举很累赘

[ 本帖最后由 阿宅. 于 2009-1-10 12:30 编辑 ]

iptton 发表于 2009-1-9 12:15

好像可以对两个结果进行减法...
不过这样一来你就要做两次select 外加一次排除(基于结果的)

阿宅. 发表于 2009-1-9 15:32

好的,谢谢

皇家救星 发表于 2009-1-9 22:47

select * from a;

出了结果再用文本编辑器去掉不要的列

阿宅. 发表于 2009-1-10 00:36

ls可能不知道我用意,我就是想一select出来就没有我不想出现的字段

水上漂 发表于 2009-1-10 00:41

令人头痛的东西

iptton 发表于 2009-1-10 11:02

其实这点"麻烦“还是不要省的好,据我所知字段没有算子的,只有列表。
如果照我在2F写的方法,效率损失太大了,没必要。

阿宅. 发表于 2009-1-10 12:26

其实是这样的
我有两张表
就和开头说的一样
每张表都很多字段
我右连接的话,只能这样写
select * from a left join b
on a.id=b.id
结果临时表里面就有2个id
我再找一张表来右连接,条件还是 ab.id=c.id(ab是ab临时表的别名)的话,它就是提示找不到北
因为ab表里有两个id
所以我想组成临时表前先去掉一个id,罗列的办法是可以,但多次连接之后,就会变得很长,很难排错

吉亲史弗 发表于 2009-1-11 16:15

用视图吧~

落魂逍遥 发表于 2009-1-12 15:10

听说LS系个好牛X的程序员

皇家救星 发表于 2009-1-12 19:49

select * from a
left join b on a.id=b.id
left join c on a.id=c.id
...
where ...
页: [1]
查看完整版本: sql列名表示请教