kk_lee69 发表于 2012-2-6 09:04:41

回复 15# kodin
感謝 呵呵

可能是我的表達能力不好吧.....但是想不出如何換個方式問.....因為 問題就是我想要讓大家思考的東西

auto 发表于 2012-2-6 11:22:05

回复 13# kodin


    好像按月找出新增的名单吧

kk_lee69 发表于 2012-2-6 11:36:04

回复 17# auto

是呀...不過我只需知道家數....譬如一月份 新增加10家二月份 新增加20家 等等的

auto 发表于 2012-2-6 11:55:51

本帖最后由 auto 于 2012-2-6 12:46 编辑

回复 18# kk_lee69


    找出名单来,按月分组计数不就可以了吗?

kk_lee69 发表于 2012-2-6 13:02:22

回复 19# auto


    是呀......可能是我出的太過簡單吧......所以大家都沒興趣練習......本來是想給人練習的....
所以得從 淺到深.........

mobibi 发表于 2012-2-6 14:35:19

回复 1# kk_lee69
试试看答案对不对
SELECT COPTG2.MA002 FORM COPTG2 JOIN WHERE COUNT(COPTG1.TG004) =4 AND COPTG1.TG001 LIKE 201101* AND COPTG2.MA001=COPTG.TG004
说明:
COPTG1表示表1 COPTG2表示表2

kk_lee69 发表于 2012-2-6 14:47:00

回复 21# mobibi

SELECT COPTG2.MA002
FORM COPTG2 JOIN   -----> 這邊是不是 有缺少東西

WHERE COUNT(COPTG1.TG004) =4 AND COPTG1.TG001 LIKE 201101* AND COPTG2.MA001=COPTG.TG004

我需要列表出 每個月分......不是單單只看一個月份....... 包括年月 都得考慮近去

結果裡面 會有201001月201002......一直到整個資料庫都結束掉

另外COUNT(COPTG1.TG004) =4    這個意思是 日期 總共出現四次   我的題目的資料庫我沒打出全部但是 應該不是在這判斷的喔

auto 发表于 2012-2-6 17:27:03

不知有没有理解错..
楼主没有建表语句,全自己手工建,全部字段按字符类型,懒得改类型了.
select a.*, b.*
from(
selecttg004,substr(min(t.tg003),1,6) 产生新客户的月份
from COPTG t
where t.tg023 = 'Y'
group by tg004) a,copma b
where a.tg004 = b.ma001

kk_lee69 发表于 2012-2-6 17:41:42

本帖最后由 kk_lee69 于 2012-2-6 17:44 编辑

回复 23# auto

呵呵... 不好意思因為這個資料庫是 公司系統內的......所以我們通常只做查詢用途
所以疏忽了 表達資料庫格式問題.................


我的寫法是......


selectcount(*) as 新增家數 ,substring(TG003,1,6) 年月 ,MA017 屬性

FROM
(
selectTG004 , TG003 , MA017
from
(
selectTG004 , MIN(TG003) AS TG003from COPTG where TG023='Y' GROUP BY TG004
) a
join COPMA
on TG004=MA001

) a GROUP BYsubstring(TG003,1,6),MA017


這樣求出來的就是 每月 每個屬性 所新增加的家數

mobibi 发表于 2012-2-7 10:58:14

前段时间看了下SQL语句,不够精通 学习下

xyhqqaa 发表于 2012-2-7 19:29:15

支持下。帮顶
页: 1 [2]
查看完整版本: 【練習題】 SQL 語法練習(一)....有興趣的歡迎來練習看看