看板 PHP 關於我們 聯絡資訊
※ 引述《siren917 (HAPPY DAY)》之銘言: : 剛接觸php..標題或內容表達不清楚請見諒^^" : 有兩個資料表 : 資料表A 資料表B : ————————— —————————— : 日期|公司|單號 | 單號∣產品∣........ : ————————— —————————— : 7/20|A ∣A0011∣ A0011∣橘子∣........ : ————————— —————————— : 7/19∣B |B0011| A0011|蘋果∣........ : ————————— —————————— : B0011|西瓜|........ : 我想做出能下查詢條件後撈資料 : 能表格化去區分這些資料 : ———————————— : 日期∣公司∣單號 ∣產品∣ : ———————————— : 7/20|A |A0001∣橘子∣ : ———————————— : ∣蘋果| : ———————————— : 7/19|B ∣B0011|西瓜| : ———————————— : 請問可以做出這種效果嗎0.0 : 多謝指教 這個分兩部份作會比較容易 首先你要先建立兩個連線, 以下稱為 $db_link1 和 $db_link2 第一步先用 $db_link1 下以下的 SQL 指令 select A_date, A_company, A_NO, (select count(B_NO) from B where A_NO=B_NO group by B_NO) as Total_Num from A order by A_company asc; 第二步寫一個迴圈把 $db_link1 裡的內容一一取出 for( $i = 0; $i < mssql_num_rows( $db_link1 ); $i++ ) { $row = mssql_fetch_array( $db_link1 ); echo '<tr>'; echo '<td rowspan="'.$row("Total_Num").'">'.$row("A_date").'</td>'; echo '<td rowspan="'.$row("Total_Num").'">'.$row("A_company").'</td>'; echo '<td rowspan="'.$row("Total_Num").'">'.$row("A_NO").'</td>'; // 這裡使用 $db_link2 下以下的 SQL 指令取出清單 // "select B_product from B where B_NO='".$row("A_NO")."' order by B_product asc;" // 取出資料後跑下面的迴圈 for( $j = 0; $i < mssql_num_rows( $db_link2 ); $j++ ) { $list = mssql_fetch_array( $db_link2 ); echo '<td>'.$list("B_product").'</td>'; echo '</tr>'; if( $j < mssql_num_rows( $db_link2 )-1 ) echo '<tr>'; } } 這樣網頁上就會呈現出你要的效果了 如果你只是單純的想要 SQL 撈出來的資料就長成你要得那樣 最大的限度只能得到以下的結果 ———————————— 日期∣公司∣單號 ∣產品∣ ———————————— 7/20|A |A0001∣橘子∣ ———————————— 7/20|A |A0001∣蘋果| ———————————— 7/19|B ∣B0011|西瓜| ———————————— 日期、公司、單號重複的部份並不會是空白 所以顯示的時候要經過一些處理 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.41.11.214 ※ 編輯: yuleen123 來自: 114.41.11.214 (07/20 19:47)
siren917:謝謝大大的講解! 07/21 12:56
siren917:XD我後來做出那種效果是~設變數IF單號一樣只要印出產品 07/21 13:34