У меня есть два запроса mysql
SELECT `name` AS name1,`id` AS id1 FROM `table` WHERE id=1
SELECT `name` AS name2,`id` AS name2 FROM `table` WHERE id=2
Результаты будут выводиться следующим образом
NAME1 ID1
john 1
NAME2 ID2
meg 2
Есть ли в любом случае, что из 2 запросов я бы сделал 1, и он отобразит все результаты в 1 строке из одной таблицы?
NAME1 ID1 NAME2 ID2
john 1 meg 2
выберите tbl1.name, tbl1.id, tbl2.name, tbl2.id из mytable tbl1, mytable tbl2
но этот запрос будет бесполезным, он даст вам целые комбинации двух имен в любом порядке из вашей таблицы, вы можете отфильтровать его с предложением WHERE, но.. сколько у вас имен? зачем это делать? возможно, если мы знаем, что вы пытаетесь сделать, мы можем дать вам лучший ответ
ИЗМЕНИТЬ ohhh Теперь я вижу ваши запросы... это должно быть что-то вроде этого
select tbl1.name,tbl1.id,tbl2.name,tbl2.id from mytable tbl1,mytable tbl2 where tbl1.id=1 and tbl2.id=2
SELECT t1.name AS name1, t1.id AS id1, t2.name as name2, t2.id as id2
FROM table as t1, table as t2 WHERE t1.id = 1 and t2.id = 2;
Select Min( Case When Id = 1 Then Id End ) As Id1
, Min( Case When Id = 1 Then Name End ) As Name1
, Min( Case When Id = 2 Then Id End ) As Id2
, Min( Case When Id = 2 Then Name End ) As Name2
From `table`
Where Id In(1,2)
Вы можете комбинировать запрос, подобный этому
SELECT `name`,`id` FROM `table` WHERE id=1 OR id=2
но вы все равно получите два результата. Что вы пытаетесь сделать с результатом?
Вы имеете в виду что-то вроде использования OR в предложении WHERE? Как:
SELECT `name`,`id` FROM `table` WHERE id=1 OR id = 2