add batch remove batch split batch comment selection show hidden batches hide batch highlight batch
db<>fiddle
donate feedback about
By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE SomeTable (
column1 int
, column2 int
, column3 int
, column4 int
, column5 int
)

CREATE TABLE SomeTable_Debug (
id int identity
, createdDate datetime
, column1 int
, column2 int
, column3 int
, column4 int
, column5 int
)


INSERT INTO SomeTable
VALUES
(1,2,3,4,5)
, (2,3,4,5,1)
, (3,4,5,1,2)
, (4,5,1,2,3)
, (5,1,2,3,4)
;

5 rows affected
-- Simulate procedure execution 1
DECLARE @param1 int = 1
, @param2 int = 22
, @param3 int = 3
, @param4 int = 4
, @param5 int = 5

SELECT TOP 1 *
FROM SomeTable
WHERE column1 = @param1
AND column2 = @param2
AND column3 = @param3
AND column4 = @param4
ORDER BY column1
;

IF @@ROWCOUNT = 0
BEGIN
INSERT INTO SomeTable_Debug( createdDate, column1, column2, column3, column4, column5)
VALUES (getDate(), @param1, @param2, @param3, @param4, @param5)
END


column1 column2 column3 column4 column5
-- Simulate procedure execution 2
DECLARE @param1 int = 1
, @param2 int = 22
, @param3 int = 3
, @param4 int = 4
, @param5 int = 56

SELECT TOP 1 *
FROM SomeTable
WHERE column1 = @param1
AND column2 = @param2
AND column3 = @param3
AND column4 = @param4
ORDER BY column1
;

IF @@ROWCOUNT = 0
BEGIN
INSERT INTO SomeTable_Debug( createdDate, column1, column2, column3, column4, column5)
VALUES (getDate(), @param1, @param2, @param3, @param4, @param5)
END
column1 column2 column3 column4 column5
-- demo results
SELECT *
, (SELECT 1 WHERE NOT EXISTS (SELECT NULL FROM SomeTable st WHERE st.column1 = d.column1)) AS Matches_Column1
, (SELECT 1 WHERE NOT EXISTS (SELECT NULL FROM SomeTable st WHERE st.column2 = d.column2)) AS Matches_Column2
, (SELECT 1 WHERE NOT EXISTS (SELECT NULL FROM SomeTable st WHERE st.column3 = d.column3)) AS Matches_Column3
, (SELECT 1 WHERE NOT EXISTS (SELECT NULL FROM SomeTable st WHERE st.column4 = d.column4)) AS Matches_Column4
, (SELECT 1 WHERE NOT EXISTS (SELECT NULL FROM SomeTable st WHERE st.column5 = d.column5)) AS Matches_Column5
FROM SomeTable_Debug d
id createdDate column1 column2 column3 column4 column5 Matches_Column1 Matches_Column2 Matches_Column3 Matches_Column4 Matches_Column5
1 2022-04-18 16:57:56.643 1 22 3 4 5 null 1 null null null
2 2022-04-18 16:57:56.643 1 22 3 4 56 null 1 null null 1