php - MySQL 中两个表的 select 查询

标签 php mysql sql

我正在运行此查询

select * from user_meta JOIN user ON user_meta.userid=user.userid where user_meta.userid=9

但这并没有得到我想要的结果,它返回多行。

我的一张表看起来像这个名字user_meta:

umeta_id     userid      meta_key       meta_value
 1              9         mobile        123324
 2              9         address       some address
 3              9         city          some city
 4              9         country       some country
 5              9         occupation    some details
 6              9         website       someurl
 7              9         mobile        123324
 8              9         address       some address
 9              9         city          some city
 10             10        country       some country
 11             10        occupation    some details
 12             10        website       someurl

另一个表看起来像这个名称用户:

userid          username      fullname      email              role
  9             someuser       john Doe    123324@gmail.com    admin

我怎样才能让它选择查询,以便可以从两个表中获取与userid 9相关的所有值,并使其看起来像这样

所需输出:

userid          username      fullname      email              role      Mobile     address     city     country    occupation     website
  9             someuser       john Doe    123324@gmail.com    admin    123123     someaddres    Somecity    somecountry    some details    someurl

谢谢! (提前!)

最佳答案

SELECT 
    *
FROM
    user
        INNER JOIN
    user_meta ON user_meta.userid = user.userid
WHERE
    user.userid = 9

以上答案是针对您最初的要求。但是根据您的新要求,它不能通过简单的查询来完成,它需要是动态的,在这里我已经为您创建了演示,您可以使用这个

http://sqlfiddle.com/#!2/39861/2

关于php - MySQL 中两个表的 select 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21157511/

相关文章:

php - 数据表警告 : table id=DataTables_Table_0 - Ajax error

提交表单后 PHP 得到空白页 + 信号段错误 (11)

MySQL 高级求和查询

mysql - 在两个 timeskip 数据库传输数据之间获取切片数据

php - 创建动态规范 url

php - 如何限制 Eloquent 中的数据?拉拉维尔 5.4

来自 MySQL 结果的 jQuery 自动完成(没有 JSON - 如果可能)

mysql order by 有重复项,可选参数?

sql - 如何使sql搜索查询更强大?

用于 Xpath 查询的 SQL Xml