自答
SELECT `tmp`.`attr1`,`tableB`.`attr1`
FROM (
SELECT `id`,`attr1`
FROM `table1`
WHERE `id` = '123'
) AS `tmp`
INNER JOIN `tableB`
ON `tmp`.`id` = `tableB`.`foreign_id`
應該是如此吧^^
參考Database板217篇PsMonkey大大的文章^^~
(感謝感謝~~我的最愛又多一個板了XD)
感覺上這應該算是滿有效率的一個方法了吧@@a
還有更好的寫法嗎@@~
※ 引述《grassboy2 (活力花俏草兒Grassboy大렩》之銘言:
: 嗯…想要問一下關於他的用法…
: 就是啊…當我在執行
: SELECT `tableA`.`attr1` `tableB`.`attr1`
: FROM `tableA` INNER JOIN `tableB`
: ON `tableA`.`id` = `tableB`.`foreign_id`
: WHERE `tableA`.`id` = '123' 時
: MYSQL會對那些`tableA`.`id` <> '123'的資料也先作JOIN嗎?
: 如果會的話@@~那…感覺在資料量一多的時候…
: 無法滿足WHERE條件的資料一定會很多…不就作了一堆無謂的JOIN了嗎@@~
: 那…INNER JOIN的效率感覺很差耶@@~
: 最近看到INNER JOIN滿想問這問題的^^"
: 板上的高手可以指點一下嗎><~謝謝囉~
--
╔作者 grassboy2 來自 ptt.cc 的怒吼!
█ ◎P_GrassboyWebBBS版【http://WebGrassboy.twbbs.org】
Design By Grassboy@MDS 白日夢工作室 ╚─你現在還以為,瀏覽器不能打逼嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.206.39