创建关系
问题描述:
假设我有2表,其中PID和id的主键和自动递增创建关系
-
含有张贴柱
pid | post|
-
含有联柱
id | pid | name
and i when获取后的数据(假设我知道的[名]我想获取帖子ID)
我可以使用两个循环在PHP中做到这一点像
$b=mysqli_query($connect,"SELECT pid FROM linking WHERE name='bla'")
while($a=mysqli_fetch_array($b)){
$c=mysqli_fetch_array(mysqli_query($connect,"SELECT post FROM posting WHERE pid='$a["pid"]' LIMIT 1"))
}
但我知道有更好的方式来做到这一点在SQL中使用的关系,如果有人可以帮助我查询
我看,但发现一些内部联接,我不明白
答
这应做到:
SELECT pid FROM linking
JOIN SELECT posting on linking.pid=posting.pid
WHERE linking.name='bla'
如果你想只在第二个表格的第一行,你会做这样的事情:
SELECT *
FROM linking
LEFT JOIN posting a ON posting.pid = (
SELECT
MIN(posting.pid) pid2
FROM posting p2
WHERE p2.pid2 = linking.pid
)
WHERE Linking.name='bla'
也许宁可使用连接和获取的一次。 –