PDA

View Full Version : طریقه گرفتن کوئری



sg.programmer
یک شنبه 17 اردیبهشت 1396, 19:35 عصر
سلام این کوئری را چطور باید بگیرم
سه جدول دارم که بر اساس فیلد x مشترک هستند حالا میخوام در تاریخهای مشترک فیلد های هر سه را در یک سطر نشون بدم
در جداول زیر یک تا سه در هر تاریخ برا اساس فیلد مشترک x فقط یک y1 , y2 , y3 دارم.
x : شماره حساب
y ها : مبلغ های پرداختی سه نوع وام هستند شاید بعضی مواقع هم خالی باشند
Date: هم تاریخ هست.

میخوام در جدول مورد نظر بر اساس تاریخ هر سه وام پرداخت شده مبالغشون در یک سطر قرار گیرند

جدول 1

x | y1 | Date
-----------------

tbl2

x | y2 | date
-----------------------

tbl3

x | y3 | date
-------------------------

جدول مورد نظر

x | y1 | y2 | y3 | Date
------------------------------------

sg.programmer
سه شنبه 19 اردیبهشت 1396, 20:55 عصر
سلام کسی نظری یا راهنمایی نداره؟

Reza_Yarahmadi
یک شنبه 24 اردیبهشت 1396, 18:22 عصر
اولین چیزی که به نظرم رسید اینه
SELECT
ISNULL(T1.X, ISNULL(T2.X, T3.X)) AS X,
Y1,
Y2,
Y3,
ISNULL(T1.Date1, ISNULL(T2.Date2, T3.Date3))
FROM
Table1 T1 FULL OUTER JOIN Table2 T2
ON
T1.Date1 = T2.Date2
AND
T1.X = T2.X
FULL OUTER JOIN Table3 T3
ON
T1.Date1 = T3.Date3
AND
T1.X = T3.X
ORDER BY X