[SQL ] 考題語法請教
以下有兩個資料表:
> customers
C_ID Name City Address Phone
1 張一 台北市 XX路100號 02-123456789
2 王二 新竹縣 YY路200號 03-123456789
3 李三 高雄縣 ZZ路300號 07-123456789
> orders
O_ID OrderNO C_ID
1 2572 3
2 7375 3
3 1054 1
4 7520 1
5 1257 2
(1)找出每位客戶的訂單總數及最後那筆訂單編號。
我的解法:
select customers.Name, count(orders.C_ID) as OrderNumber,
max(OrderNO) as LastOrderNum
from customers, orders
where customers.C_ID = orders.C_ID
group by orders.C_ID
依照鄉民建議修改。
(2)修改訂單編號1257的客戶電話為03-87654321。
我的解法:
select customers.C_ID, customers.Name, customers.City, customers.Address,
replace (customers.Phone, '03-12345678', '03-87654321') as Phone
from orders, customers
where customers.C_ID = orders.C_ID and
orders.OrderNO = 1257
這裡用replace處理,但是不確定與update的差別,是指資料庫內容有無更新嗎?
(3)複製張一最後一筆訂單的資料,新增至orders(PK: O_ID)
我的解法:
想到的方式是create table然後全部重key,這樣很笨但是暫時查無好方法。
再麻煩各位解答了,感謝~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.164.43 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1560268346.A.7B9.html
推
06/12 00:37,
5年前
, 1F
06/12 00:37, 1F
感謝建議,更新後解法修改在內文。
→
06/12 09:51,
5年前
, 2F
06/12 09:51, 2F
→
06/12 09:51,
5年前
, 3F
06/12 09:51, 3F
→
06/12 09:52,
5年前
, 4F
06/12 09:52, 4F
→
06/12 09:52,
5年前
, 5F
06/12 09:52, 5F
→
06/12 09:53,
5年前
, 6F
06/12 09:53, 6F
本人資質駑鈍,有點看不懂,不過有更新語法在內文,還請指導。
※ 編輯: paranoia5201 (123.194.164.43 臺灣), 06/12/2019 11:41:36
※ 編輯: paranoia5201 (123.194.164.43 臺灣), 06/12/2019 11:44:39
推
06/12 13:25,
5年前
, 7F
06/12 13:25, 7F
推
06/12 13:27,
5年前
, 8F
06/12 13:27, 8F
→
06/12 13:27,
5年前
, 9F
06/12 13:27, 9F
→
06/12 13:28,
5年前
, 10F
06/12 13:28, 10F
→
06/12 13:33,
5年前
, 11F
06/12 13:33, 11F
→
06/12 17:05,
5年前
, 12F
06/12 17:05, 12F
→
06/12 17:10,
5年前
, 13F
06/12 17:10, 13F
推
06/16 22:19,
5年前
, 14F
06/16 22:19, 14F
→
06/16 22:19,
5年前
, 15F
06/16 22:19, 15F
→
06/16 22:20,
5年前
, 16F
06/16 22:20, 16F
Database 近期熱門文章
PTT數位生活區 即時熱門文章