Как я могу выбрать count(*)
из двух разных таблиц (позвонить им tab1
и tab2
), в результате:
Count_1 Count_2
123 456
Я пробовал это:
select count(*) Count_1 from schema.tab1 union all select count(*) Count_2 from schema.tab2
Но все, что у меня есть, это:
Count_1
123
456
FROM dual
.В качестве дополнительной информации, чтобы выполнить то же самое в SQL Server, вам просто нужно удалить «FROM dual» часть запроса.
источник
Просто потому что это немного отличается
Это дает транспонированные ответы (одна строка на таблицу вместо одного столбца), в противном случае я не думаю, что это сильно отличается. Я думаю, что по производительности они должны быть эквивалентны.
источник
Мой опыт работы с SQL Server, но не могли бы вы сделать:
В SQL Server я получаю результат, который вам нужен.
источник
Другие немного другие методы:
источник
Поскольку я не вижу другого ответа, поднимите это.
Если вам не нравятся подзапросы и есть первичные ключи в каждой таблице, вы можете сделать это:
Но с точки зрения производительности я считаю, что решение Quassnoi лучше, и то, которое я бы использовал.
источник
SELECT (SELECT COUNT(*) FROM table1) + (SELECT COUNT(*) FROM table2) FROM dual;
источник
Вот от меня поделиться
Вариант 1 - подсчет из одного домена из другой таблицы
Вариант 2 - подсчет из другого домена для одной и той же таблицы
Вариант 3 - подсчет из другого домена для одной и той же таблицы с «объединением всех» для подсчета строк
Наслаждайтесь SQL, я всегда делаю :)
источник
источник
источник
Быстрый удар пришелся с:
Примечание: я проверил это в SQL Server, поэтому
From Dual
не является необходимым (отсюда и расхождение).источник
Для большей полноты - этот запрос создаст запрос, чтобы подсчитать все таблицы для данного владельца.
На выходе что-то вроде
Который вы можете запустить, чтобы получить ваши счета. Это просто удобный сценарий, чтобы иметь иногда.
источник
Если таблицы (или, по крайней мере, ключевой столбец) одного типа, сначала создайте объединение, а затем подсчитайте.
Или возьмите свой напиток и положите вокруг него еще одну сумму ().
источник
источник
или
источник
ПРИСОЕДИНЯЙТЕСЬ к разным таблицам
источник
выберите (выберите count ( ) из tab1, где,
field
как «значение») + (выберите count ( ) из tab2, где,field
как «значение») countисточник
источник