ANSI SQL вопрос - PullRequest
       3

ANSI SQL вопрос

0 голосов
/ 11 августа 2009

У меня есть таблица с полями (id, parent_id, name, creation_at). Я хочу написать запрос, чтобы выбрать идентификатор, имя, создал_кат, родительский_создание_at. «Parent_created_at» - это поле «create_at» для записей, соответствующих родительскому элементу (если он есть - т.е. записи parent_id> 0), в противном случае поле «parent_created_at» должно быть нулевым. Есть предложения?

Ответы [ 2 ]

0 голосов
/ 11 августа 2009

Morpheous,

В вашей таблице только две строки, поэтому, пожалуйста, приложите все усилия, чтобы сообщить все детали! Все, что вы говорите нам, это их родительские идентификаторы, и условие соединения вашего запроса зависит не только от этого.

Можете ли вы заполнить ... ниже, чтобы мы знали детали full ?

CREATE TABLE t(...
INSERT INTO t VALUES (...
INSERT INTO t VALUES (...
0 голосов
/ 11 августа 2009

Самостоятельное соединение + ANSI SQL CASE Выражение

SELECT t.id
       , t.name
       , t.created_at
       , CASE WHEN t.parent_id > 0 THEN p.created_at ELSE NULL END AS parent_created_at 
FROM   Table t
JOIN   Table p
ON     t.id = p.parent_id
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...