mysql - проблема присоединения - PullRequest
2 голосов
/ 04 мая 2011

У меня есть две таблицы, подобные приведенным ниже,

mysql> select * from Books ;
+----+------+------------+----------+----------+
| id | name | author_name| category | category2|
+----+------+------------+----------+----------+
|  1 |    1 | Steve      |    CT001 |    CT003 |
|  2 |    2 | John       |    CT002 |    CT002 |
|  3 |    3 | Larry      |    CT003 |    CT002 |
|  4 |    3 | Michael    |    CT004 |    CT004 |
|  5 | NULL | Steven     |    CT005 |    CT005 |
+----+------+------------+----------+----------+

mysql> select * from Codemst ;
+----+------+------------+
| id | code |    name    |
+----+------+------------+
|  1 | CT001| fiction    |
|  2 | CT002| category1  |
|  3 | CT003| etc        |
|  4 | CT004| etc2       |
|  5 | CT005| etc3       |
+----+------+------------+

Я хочу получить удобочитаемое имя категории, когда задаю запрос типа «выбрать * из книг»;
Если в Книгах была только одна категориятаблица, я думаю, что я могу использовать «Присоединиться», но, в этом случае, что я могу сделать?

1 Ответ

4 голосов
/ 04 мая 2011
select * from Books b 
    Inner Join Codemst c1 on b.category = c1.code 
    inner join codemst c2 on b.category2 = c2.code;

c1.name будет содержать читаемую категорию, а c2.name - читаемую категорию2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...