例如,我有一张桌子

catid | parentcatid | dirname
  4   |      0      | mobiles
 243  |      4      | Nokia

当我得到catid = 243时,我需要带上mysql_query (catid=parentcatid)
243 | mobiles | Nokia

我可以先选择catidparentcatiddirnameid=243位置,然后选择相同的parentcatid = catid位置,但是
如何进行单一查询?

最佳答案

JOIN桌子两次:

SELECT
  t2.catid, t1.dirname 'dirname', t2.dirname 'parentname'
FROM Tablename t1
INNER JOIN Tablename t2 ON t1.catid = t2.parentcatid
WHERE t2.catid = 243;

SQL Fiddle Demo
这将给你:
| CATID | DIRNAME | PARENTNAME |
--------------------------------
|   243 | mobiles |      Nokia |

关于php - 如何将2个mysql查询合并到1个表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14339966/

10-11 03:32