У меня есть две таблицы в моей БД. В одном я имею почтовые ящики, в другом я храню псевдонимы. Чтобы создать панель инструментов, я бы хотел получить статистические данные.
SELECT count(*) as postbox, sum(size) as size FROM users where email like '%@rootix.de'
и другой запрос будет:
select count(*) as aliases from aliases where alias like '%@rootix.de'
В результате я хочу иметь одну строку с почтовым ящиком, размером и псевдонимами. Поэтому я должен объединить два оператора SELECT.
Что-то вроде
select count(*) as aliases from aliases where alias like '%@rootix.de'
у меня не сработало, я получил сообщение об ошибке "Используемые операторы SELECT имеют разное количество столбцов".
Я посмотрел вверх, но нашел только псевдо-решения с INNER JOIN по номеру строки. Это единственный способ решить это?
Одним из вариантов, возможно, немного грубой силы, будет просто использовать три отдельных подзапроса в одном выборе:
SELECT
(SELECT COUNT(*) FROM users WHERE email LIKE '%@rootix.de') AS postbox,
(SELECT SUM(size) FROM users WHERE email LIKE '%@rootix.de') AS size,
(SELECT COUNT(*) AS FROM aliases WHERE alias LIKE '%@rootix.de') AS aliases;
INNER JOIN
?