我有一个简单的事情要做,根据链接重新组合表中的两个元素及其名称。
CREATE TABLE element (
id int(11) NOT NULL auto_increment,
text varchar(100) NOT NULL
);
CREATE TABLE link (
elem_1_id int(11) NOT NULL,
elem_2_id int(11) NOT NULL
);
我想在链接中包含两个元素的文本:
之后:
INSERT INTO element (text) VALUES ('door');
INSERT INTO element (text) VALUES ('key');
door = id 1,key = id 2 和
INSERT INTO link (elem_1_id,elem_2_id) VALUES (1,2);
我如何使用select来:
|门|关键|
答案 0 :(得分:0)
试试这个:
SELECT
(SELECT
e.text
FROM
element e
INNER JOIN link l
ON l.`elem_1_id` = e.id) text1,
(SELECT
e.text
FROM
element e
INNER JOIN link l
ON l.elem_2_id = e.id) text2
FROM
element e
INNER JOIN link l
ON (l.`elem_1_id` = e.id)
OR (l.`elem_2_id` = e.id)
GROUP BY l.`elem_1_id`
OR l.`elem_2_id`
答案 1 :(得分:0)
能够做到:
SELECT e1.text, e2.text FROM link, element e1 INNER JOIN element e2 where link.elem_1_id=e1.id and link.elem_2_id=e2.id;