开发者

Mysql selection from more than one table

开发者 https://www.devze.com 2023-04-02 14:51 出处:网络
SELECT * FROM dog WHERE (SELECT calluser FROM jos_users WHERE `user_id`=\'\".$cid.\"\')=Subcode $cid is the identifier in jos_users, which tells us which users we\'re fetching data about
SELECT * FROM dog WHERE (SELECT calluser FROM jos_users WHERE `user_id`='".$cid."')=Subcode

$cid is the identifier in jos_users, which tells us which users we're fetching data about

The data I want to fet开发者_StackOverflowch is within "dog", and calluser is the identifier between the two (which tells us who's dogs are who's)

I need to be able to call only the dogs relevant to the user in question, but it also has to be performed in one query. Can anyone help? Much appreciated.


You need to use joins.
Read this tutorial: http://www.tizag.com/mysqlTutorial/

Your query should look something like this:

$cid = mysql_real_escape_string($_GET['cid']);
$query = "SELECT d.* FROM dog d
INNER JOIN jos_users ju ON (d.user_id = ju.id) 
WHERE ju.id = '$cid' ";


If I got you right (and the id column in the dog-table links to the calluser column in the jos_user-table) the query should be

SELECT d.* FROM dog AS d JOIN jos_user AS u ON d.id = u.calluser WHERE u.user_id = '$cid'

If not please explain your data structure in more detail (maybee small ER diagram).

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号