已采納回答 / jeffspeeder
原因在于建立表的時候就將type_id 與parent_id 做了關聯<...code...>看上面的輸出,家用電器和電腦辦公的parent_id 為0,而type_id列 沒有為0的,所以他們沒有父類;大家電和生活電器的parent_id為1,...
2017-01-30
已采納回答 / LiuKeqing
inner join和left join最后刪除的效果是一樣的。但這兩條sql在執行過程中的原理是不一樣的。之所以最后執行的效果相同,是因為where子句把二者查詢的不同數據給過濾掉了。inner join的情況下,t2表查到了2條數據,這個結果是子查詢 查到的,是固定的。t1表根據連接條件查到了4條數據,在where子句過濾之后就剩下符合條件的兩條語句了。left join的情況下,t2表查到了2條數據,和上面的結果是一樣的。t1表根據連接條件會將所有的結果都查出來,因為左連接是以t1表為主的。然后,在...
2017-01-17
已采納回答 / neil_fish
這是因為 g.cate_id = c.cate_id 只是 ON 語句(表連接的條件)。 而在SELECT語句下,并沒有選取g.cate_id或者c.cate_id。 所以SQL在內部根據ON連接c和g兩張表以后,再提取的列里并不含有cate_id,所以最后是不會查看到這一列的。
2017-01-07
已采納回答 / JOHN47
SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price >= (SELECT ROUND(AVG(goods_price),2) FROM tdb_goods);
2017-01-07
已采納回答 / 畫方為圓
你的問題到底是。寫了這個代碼為什么只更新第一行的數據還是。如何只更新第一行的數據?如果是問這個代碼為什么只更新第一行的數據。因為你這個更新給了WHERE age=26的這個條件。只有滿足這個條件的行才會更新,所以就是說。你的第一行也僅僅只有第一行滿足這個age=26的這個條件。所以才只會更新第一行
2017-01-06