Ответ 1
Вы можете наложить псевдоним и запрос и выбрать их в выбранном запросе
http://sqlfiddle.com/#!2/ca27b/1
SELECT x.a, y.b FROM (SELECT * from a) as x, (SELECT * FROM b) as y
У меня есть два запроса, которые возвращают отдельные наборы результатов, и запросы возвращают правильный вывод.
Как я могу объединить эти два запроса в один, чтобы получить один набор результатов с каждым результатом в отдельном столбце?
Запрос 1:
SELECT SUM(Fdays) AS fDaysSum From tblFieldDays WHERE tblFieldDays.NameCode=35 AND tblFieldDays.WeekEnding=?
Запрос 2:
SELECT SUM(CHdays) AS hrsSum From tblChargeHours WHERE tblChargeHours.NameCode=35 AND tblChargeHours.WeekEnding=?
Благодарю.
Вы можете наложить псевдоним и запрос и выбрать их в выбранном запросе
http://sqlfiddle.com/#!2/ca27b/1
SELECT x.a, y.b FROM (SELECT * from a) as x, (SELECT * FROM b) as y
Вы можете использовать CROSS JOIN
:
SELECT *
FROM ( SELECT SUM(Fdays) AS fDaysSum
FROM tblFieldDays
WHERE tblFieldDays.NameCode=35
AND tblFieldDays.WeekEnding=1) A -- use you real query here
CROSS JOIN (SELECT SUM(CHdays) AS hrsSum
FROM tblChargeHours
WHERE tblChargeHours.NameCode=35
AND tblChargeHours.WeekEnding=1) B -- use you real query here
Вы также можете использовать CTE для захвата групп требуемой информации и объединения их вместе, если вы хотите, чтобы они были в одной строке. Пример, в зависимости от того, какой синтаксис SQL вы используете, здесь:
WITH group1 AS (
SELECT testA
FROM tableA
),
group2 AS (
SELECT testB
FROM tableB
)
SELECT *
FROM group1
JOIN group2 ON group1.testA = group2.testB --your choice of join
;
Вы сами решаете, какой тип JOIN вы хотите на основе данных, которые вы вытаскиваете, и убедитесь, что у вас есть одинаковые поля в группах, из которых вы получаете информацию, чтобы перевести все это в одну строку. Если у вас несколько столбцов, обязательно укажите их все правильно, чтобы вы знали, что есть. Кроме того, для повышения эффективности, CTE - это путь, а не встроенный SELECT и т.д. Надеюсь это поможет.
как включить запрос 4 в качестве одного запроса
показать ниже запрос
nsc = характер случая
отчет берется 06 числа каждого месяца
(ежемесячный отчет будет отсчитываться с 05-го числа предыдущего месяца до 05-го числа текущего месяца)