台灣最大程式設計社群網站
線上人數
1597
 
會員總數:246083
討論主題:189658
歡迎您免費加入會員
討論區列表 >> MySQL >> 誰會交叉比對呢??
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
誰會交叉比對呢??
價值 : 0 QP  點閱數:2522 回應數:2
樓主

呆呆怡
初學者
76 11
571 58
發送站內信

我一直寫不出來,好難好難喔~~~
我有三種班級的課表時間,
怕衝堂,所以我必須將所有學員做比對,
先判斷這學員總共參加幾個班,
兩個或三個班的,再判斷一次他們的上課時間是否有衝突,
如果有就列出來,這樣我該怎麼來寫會比較好呢?
我的想法是~~陣列裡數值的交叉比對,
不知道對不對說....請各位高手替小女子解惑唄!!

本篇文章發表於2003-08-01 01:20
1樓
回應

Allen
捐贈 VP 給 Allen 檢舉此回應
我不知道你table如何設計的, 但若設計成

課堂基本資料
課堂ID,星期幾, 第幾節
1,       1,       1 <--表示星期一第一節上課
....
------------------------------------
課程基本資料
課程ID,名稱
1,       歷史
...
------------------------------------
課程-課堂明細表 : 用來記錄此課程在哪幾堂要上課
課程ID,課堂ID
1,      2 
1,      1
<--表示歷史課在星期一的第1,2節上課
------------------------------------
table有點多,就不全列了, 不過, 如果學生選了課的記錄是在
學生ID,課程ID
0001,  1 <--表示0001號學生要上歷史課,用join你當然知道何時要上課囉
將已選課程的上課時間放到Array1()<--這部份一個select便可以做到了
想要選的放在array2()

然後
For I=0 to UBound(array2)
  For J=0 to UBOund(array1)
    If array2(I) = array1(J) then '表示課堂ID相同,衝堂
  Next
Next

就差不多了,希望對你有幫助
本篇文章回覆於2003-08-01 09:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

呆呆怡
檢舉此回應
select tbmclass.*,tbeclass.* from tbeclass left join tbmclass on tbeclass.commerce=tbmclass.commerce where.......後面就不贅述了!!

因為table是將兩個班級的學員做身份的比對,再去比欄位,所以我知道我的問題出在,沒有一個唯一性的索引值,所以才會抓出的值會錯亂,所以我現在在想辦法改mysql中的欄位值,才是一勞永逸的方法,還是謝謝高手的指點.....~.~

本篇文章回覆於2003-08-06 12:56
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.