Выбор из двух таблиц, с разными столбцами, где требуется подсчет - PullRequest
0 голосов
/ 23 февраля 2010

У меня есть две таблицы, TableA и TableB.Мне нужно выбрать одно значение счетчика из таблицы А, основываясь на условии где.Мне нужно выбрать два значения из таблицы B.Я хотел бы, чтобы все значения в одном наборе результатов.В наборе результатов никогда не будет более одной строки.

Вот что я имею сейчас:

SELECT count(id) FROM TableA WHERE ($some_where_statement) SELECT owner, owner_ID from TableB

Я знаю, что это должно быть просто, но этовыкидывать ошибку.Есть предложения?

1 Ответ

1 голос
/ 23 февраля 2010

Вы можете перекрестное соединение, чтобы объединить строки из двух не связанных таблиц:

SELECT T1.cnt, T2.owner, T2.owner_ID
FROM (SELECT count(id) FROM TableA WHERE ($some_where_statement)) AS T1
CROSS JOIN (SELECT owner, owner_ID from TableB) AS T2

Чтобы в наборе результатов была только одна строка, предполагается, что оба подзапроса возвращают только одну строку. Я подозреваю, что это не относится ко второму подзапросу. Возможно, вам не хватает предложения where.

...