作者bobju (宝贝猪)
看板Database
标题Re: [SQL ] 请教一个查询语法....
时间Sat Aug 29 18:14:39 2009
原本的设计 plus_01,plus_02,......plus_30 要拆成:
plus_01
plus_02
plus_03
..
.
意即原本的column要转成row的形式. 如此一来, 就能够用sql做很多事情.
不过, 资料架构一变动, 依附於其上的所有程式(若有的话)也要全部跟着
变动. 这就变成一件极为麻烦的事了.
若要维持原架构, 那麽就用捞资料出来再用程式逐栏判断正负的方式来做
亦可.
※ 引述《b8888 (b8888)》之铭言:
: 各位大大好~~~
: 小弟有一个table 叫 aa
: database 为 access
: 它结构为
: yymm char(06) , plus_01,plus_02 ,...................plus_30 ,(有30个 columne)
: , min_01,min_02 ,..................... min_30 ,(有25个 columne)
: 其中cloumn plus_XX 及 min_XX (XX表示01~30) 的结构为 integer
: 小弟有一个问题是~~~
: 我要如何用sql 语法查列出 plus_XX 及 min_XX column 其值小於 0 的栏位
: PS' 每一个栏位都有可能为负值(每月均不同)
: ex :
: plus_01 = 10 ,plus_02 =30 ,plus_03 =-1 ,plus_04 =20 ........
: min_01 = -2 ,min_02=1 ,min_03=100 ,min_04=-14 .................
: 查询结果仅秀出
: plus_03 ,plus_04 ,min_01,min_04
: 即大於0的不秀出
: 谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.104.183.16
1F:→ grence:yymmdd char(6), plus int, min int 08/29 21:39
2F:推 jackghost:如果仅是要列出的话,就照着bobju大的做法,每天跑排程去 08/29 23:33
3F:推 jackghost:把这些data"转置"一下,较好处理~~要查的时候再跑也可以 08/29 23:38
4F:推 b8888:谢谢各位大大解惑 08/30 20:23