Php 多个表和查询
我如何将这样的东西连接在一起:Php 多个表和查询,php,mysql,Php,Mysql,我如何将这样的东西连接在一起: $query = ("SELECT * FROM profiles,follow WHERE follow.friend ='$user' AND follow.user !='$user' AND profiles.user1 =follow.user ORDER BY id DESC limit 20"); 或 我需要查询来显示两个不同的东西,我该怎
$query = ("SELECT * FROM profiles,follow
WHERE follow.friend ='$user'
AND follow.user !='$user'
AND profiles.user1 =follow.user
ORDER BY id DESC limit 20");
或
我需要查询来显示两个不同的东西,我该怎么做 试试这个
$query = "SELECT * FROM profiles,follow WHERE follow.friend ='$user' and follow.user !='$user' and profiles.user1 =follow.user and profiles.user1='$user' order by id DESC limit 20";
这个
SELECT
*
FROM
follows
INNER JOIN
profiles
ON (profiles.user1 = follow.user)
WHERE
follow.friend = '{$user}'
AND follow.user != '{$user}'
AND profiles.user1 = '{$user}'
ORDER BY
profiles.id DESC
LIMIT 20
使用联合体:
SELECT *
FROM profiles, follow
WHERE follow.friend ='$user'
AND follow.user !='$user'
AND profiles.user1 =follow.user
ORDER BY id DESC limit 20
UNION
SELECT *
FROM profiles
WHERE user1='$user'
不确定我是否理解您的问题,但您是否试图在一个查询中从第一个查询中提取20行+从第二个查询中提取所有行?您的问题似乎没有意义。为什么一开始要从配置文件中提取20行,然后再选择一个用户?我重新表述了这个问题,你能再回答一次吗?对不起。我解决了这个问题。我将需要的数据保存在一个数组中,然后使用它。似乎解决了这个问题。谢谢。np,但我不明白解决方案是什么?:)
SELECT *
FROM profiles, follow
WHERE follow.friend ='$user'
AND follow.user !='$user'
AND profiles.user1 =follow.user
ORDER BY id DESC limit 20
UNION
SELECT *
FROM profiles
WHERE user1='$user'