/*Create the tables*/
CREATE TABLE T1
(
[OrganizationID] INT,
Name VARCHAR(50),
[OrderID] VARCHAR(4)
);
CREATE TABLE T2
(
[OrganizationID] INT,
[CustomerID] VARCHAR(3),
[OrderID] VARCHAR(4)
);
DECLARE @T1 TABLE (
[OrganizationID] INT,
Name VARCHAR(50),
[OrderID] VARCHAR(4));
DECLARE @T2 TABLE (
[OrganizationID] INT,
[CustomerID] VARCHAR(3),
[OrderID] VARCHAR(4));
/*Populate them*/
INSERT INTO T1
([OrganizationID],Name)
OUTPUT inserted.* INTO @T1
VALUES
(123, 'Org 1'),
(456, 'Org 2'),
(789, 'Org 3');
INSERT INTO T2
([OrganizationID],
[CustomerID],
[OrderID])
OUTPUT inserted.* INTO @T2
SELECT 123, 'abc', 'p456' UNION ALL
SELECT 123, 'def', 'p457' UNION ALL
SELECT 123, 'ghi', 'p458' UNION ALL
SELECT 123, 'jkl', 'p459' UNION ALL
SELECT TOP (100) 456, LEFT(NEWID(), 3), LEFT(NEWID(), 4)
FROM sys.all_columns
/*Query both*/
SELECT x.*
FROM @T1 org
CROSS APPLY (SELECT TOP (50) PERCENT *
FROM @T2
WHERE OrganizationID = org.OrganizationID) x;
SELECT x.*
FROM T1 org
CROSS APPLY (SELECT TOP (50) PERCENT *
FROM T2
WHERE OrganizationID = org.OrganizationID) x;
DROP TABLE T1, T2