2012-04-21 3 views
-2

Я пытаюсь выполнить запрос MySQL, который приводит к отдельным столбцам для каждого предложения WHERE. Как псевдоним для них. Предположим, у меня есть таблица со столбцом и некоторыми произвольными данными, например, строки.SQL: отдельные столбцы результатов для where clauses

Id | Column1 
0 | mango 
1 | porcupine 
2 | bear 
... 

Мне нужен запрос, который дает что-то вроде:

animals | fruits 
------------------------ 
0| porcupine | 
1| bear  | mango 

, если это вообще возможно. Я попробовал JOIN-ing подзапросы, или UNION, но это просто переписало результаты, что не очень хорошо.

Я буду использовать его в PHP и проверить, установлен ли столбец с псевдонимом, поэтому я могу идентифицировать эта строка как таковая. , например.

if(isset($results[$i]["animals"])) echo "hey it's an animal, not an apple, feed it!"; 

EDIT: ... Я хочу получить запрос, который помещает животных и фрукты в отдельные столбцы в результате. Я пробовал это:

SELECT * FROM ( 
SELECT * FROM table 
    WHERE Column1 = 'porcupine') as porcupines 
JOIN (
SELECT * FROM table 
    WHERE Column1 = 'mango') as fruits 

но это было не то, что я ищу.

+4

, как вы знаете из входных данных, что является животное и что такое плод? –

+1

И откуда вы знаете, что «не яблоко» идет с медведем, а не с дикобразом? – Lamak

ответ

0

создать еще один столбец (COLUMN2) на вашем столе, чтобы определить, если Column 1 плод или то животное создать запрос:

SELECT id, column1 AS [Animal] FROM TABLE 
WHERE Column2 = "Animal" 
UNION 
SELECT ID, column1 AS [Fruit] FROM TABLE 
WHERE Column2 = "Fruit" 
+0

смотри, вот в чем проблема, я не могу. Я должен создать запрос, который вычисляет его из одного столбца. Я могу только доказать запрос с информацией, которая подпадает под какую категорию, тогда она должна сортировать их в разные столбцы в результате. Интересно, возможно ли это. – tenshou

Смежные вопросы