mysql 很簡(jiǎn)單的union鏈接查詢保存
問(wèn)題描述
問(wèn)題解答
回答1:select * 這里 字段個(gè)數(shù)不確定, 這里的字段個(gè)數(shù)應(yīng)該和你union all 后面查出來(lái)的字段個(gè)數(shù)是一樣的才行。如果需要補(bǔ)位,就在union 后面加數(shù)字補(bǔ)位:
select column1,column2 from `products` where id in (select id from `products`) union all (select id,1 from `products`);回答2:
SELECT * FROM products WHERE id IN(SELECT id FROM products UNION ALL SELECT id FROM products) ;
我有點(diǎn)好奇,你為什么要這樣寫
回答3:SELECT * FROM `products` WHERE id IN( (SELECT `id` FROM `products`) UNION ALL (SELECT `id` FROM `products`)) ;
這個(gè)語(yǔ)句在邏輯上就存在問(wèn)題, 或者說(shuō), union 完全沒(méi)有實(shí)際作用, 連接的兩張表是同已個(gè)表. 那結(jié)果就是把一張表的 ID 給復(fù)制了一份, 比如 products 有 id {1,2,3} 那么 union 的結(jié)果就是 id {1,1,2,2,3,3} 然后還拿這結(jié)果做 in 條件, 還是查詢這張表, 那最終查詢出來(lái)的結(jié)果還是 products 原來(lái)的數(shù)據(jù), in 會(huì)匹配所有符合的記錄, 重復(fù)的 ID 不會(huì)查出兩條.
所以, 等價(jià)于
select * from products
不明白你想要什么
相關(guān)文章:
1. 在應(yīng)用配置文件 app.php 中找不到’route_check_cache’配置項(xiàng)2. html按鍵開(kāi)關(guān)如何提交我想需要的值到數(shù)據(jù)庫(kù)3. HTML 5輸入框只能輸入漢字、字母、數(shù)字、標(biāo)點(diǎn)符號(hào)?正則如何寫?4. gvim - 誰(shuí)有vim里CSS的Indent文件, 能縮進(jìn)@media里面的5. 跟著課件一模一樣的操作使用tp6,出現(xiàn)了錯(cuò)誤6. PHP類屬性聲明?7. objective-c - ios 怎么實(shí)現(xiàn)微信聯(lián)系列表 最好是swift8. javascript - 請(qǐng)教如何獲取百度貼吧新增的兩個(gè)加密參數(shù)9. html - 微信瀏覽器h5<video>標(biāo)簽問(wèn)題10. java - 安卓接入微信登錄,onCreate不會(huì)執(zhí)行
