Php SQL:同一表上多个联接的性能

Php SQL:同一表上多个联接的性能,php,sql,performance,label,Php,Sql,Performance,Label,各位堆栈溢出的访客: 我正在用PHP构建一个研究应用程序,用户可以在其中输入自己的变量。这些变量通常是数值型的。每个数值都可以附加一个文本标签,以提高数据的可读性。即,记录显示为: 记录1:值0、值1、值1、值3、值2 记录2: 而不是: 记录1:0,1,1,3,2 记录2: 为了将数字数据转换为对应的标签数据,我必须对包含文本表示(标签)的(同一)表执行大量连接。我的问题有两个: 在MySQL中对同一个表(别名)执行多个连接会对性能产生很大影响吗 对于这样的连接,最好的SQL语法是什么

各位堆栈溢出的访客:

我正在用PHP构建一个研究应用程序,用户可以在其中输入自己的变量。这些变量通常是数值型的。每个数值都可以附加一个文本标签,以提高数据的可读性。即,记录显示为:


记录1:值0、值1、值1、值3、值2

记录2:


而不是:


记录1:0,1,1,3,2

记录2:


为了将数字数据转换为对应的标签数据,我必须对包含文本表示(标签)的(同一)表执行大量连接。我的问题有两个:

  • 在MySQL中对同一个表(别名)执行多个连接会对性能产生很大影响吗
  • 对于这样的连接,最好的SQL语法是什么
  • 当然,我欢迎任何其他建议

    我期待你的回答


    汤姆

    为什么没有这样的记录结构:

    table `user_variables`:
        user_id   int
        var_name char,
        var_value char
    

    不需要自联接,因为每个名称/值对都有自己的记录。

    删除了我的答案,但觉得OP中的这条评论值得在这里发布给其他人:“一个用户完全可能有100个变量,每次检索一条记录都需要100个到标签表的联接。我想知道,仅通过SQL(由于灵活性,首选)或执行两个单独的查询,用PHP中的标签替换数据,在性能上会有多大差异?”