推 shihyanyu:謝謝yuleen123大人~我在試看看!! 11/26 23:27
※ 引述《shihyanyu (樂施者所求如意)》之銘言:
: 想請教各位大大 有沒有可能把主資料表跟子資料表一起顯示在一個重複區域
: 我有兩個資料表
: 1. ybids 訂單資料表
: ┌───┬────┬────┐
: │yco_id│yco_cid │收件地址│
: └───┴────┴────┘
: 主鍵 INDEX
: 2. ybidorders 訂單細節資料表
: ┌───┬────┬────┬────┐
: │yos_id│yos_cid │商品名稱│顏色款式│
: └───┴────┴────┴────┘
: 主鍵 INDEX
: 其中ybids訂單資料表是基本的收件資訊等等
: 訂單詳細內容 訂了那些商品 顏色款式等放在ybidorders
: 兩個資料表以yco_cid=yos_cid做關聯
: (也就是一個yco_cid對應多個訂單細節)
: 我想把訂單詳細內容拉出來顯示在訂單的重複區域裡 像這樣:
: ┌───┬────┬────────────┬────┐
: │yco_id│yco_cid │ 訂 單 細 節 │收件地址│
: ├───┼────┼────────────┼────┤
: │ 1 │ y01234 │yos_id-商品名稱-顏色款式│ │
: │ │ │29-小熊維尼手機殼-泡泡款│ │
: │ │ │64-方孔點點洞洞殼-紅色 │ │
: │ │ │95-米妮按鍵貼-NULL │ │
: │ │ │ │ │
: │ │ │ │ │
: └───┴────┴────────────┴────┘
我的作法會像下面這樣
select
a.yco_id,
a.yco_cid,
concat( b.yos_id, '-', b.商品名稱, '-', b.顏色款式 ) as detail,
a.收件地址
from
ybids as a, ybidorders as b
where
a.yco_cid = b.yos_cid
order by a.yco_id asc
如果你的 yos_id 的型態是 INTEGER 的話要先轉成字串再塞到 concat 中
補充說明:
跑出來的資料會像下面這樣
┌───┬────┬────────────┬────┐
│yco_id│yco_cid │detail │收件地址│
├───┼────┼────────────┼────┤
│ 1 │ y01234 │yos_id-商品名稱-顏色款式│ │
│ 1 │ y01234 │29-小熊維尼手機殼-泡泡款│ │
│ 1 │ y01234 │64-方孔點點洞洞殼-紅色 │ │
│ 1 │ y01234 │95-米妮按鍵貼-NULL │ │
│ │ │ │ │
│ │ │ │ │
└───┴────┴────────────┴────┘
PHP 撈資料出來後要自己處理表格合併的工作
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.41.36.40
※ 編輯: yuleen123 來自: 114.41.36.40 (11/26 20:04)