我有一个带有“profile_values”表的 sql 数据库(是的,它是一个 Drupal 数据库),我想通过一个查询来提取用户的姓名、职务和公司 ID。(我过去曾用三个查询完成此操作,但我想一次性完成。)
| fid | uid | value
| 4 | 100 | john
| 8 | 100 | doe
| 9 | 100 | web developer
| 22 | 100 | D3239GE77
我使用了不同的字段 id (fid) 来表明我想要提取的行之间可以有字段 id,但是字段 id 不会改变,所以 4 将始终是名字,8 将是姓氏,9 将是标题,22 是公司 ID。
我的第一次尝试:
$result = mysql_query("SELECT value FROM profile_values WHERE uid = '$uid' ORDER BY fid ASC");
while($row = mysql_fetch_array($result)) {
$userinfo[] = $row['value'];
$firstname = $userinfo[0];
$lastname = $userinfo[1];
$title = $userinfo[10];
$companyid = $userinfo[12];
}
但是这种方法行不通,因为根据用户填写的可选字段,可能会有更多或更少的字段。
我需要一种说法,“在这个数组中,如果 fid = 4, $firstname = value