I got program for Prime which gives only 2 as output. It should give me all based on java program I wrote.
Here is SQL I have created for Prime numbers. It is in SQL Ser
For fun (and I feel like I've likely answered someone's homework, but hey...), like a said, a Tally would be far faster:
WITH N AS (
SELECT N
FROM (VALUES(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL),(NULL))N(N)),
Tally AS(
SELECT ROW_NUMBER() OVER (ORDER BY (SELECT NULL)) AS I
FROM N N1, N N2, N N3), --1,000 Numbers
Remainders AS(
SELECT T1.I AS [Integer],
T2.I AS Divider,
T1.I % T2.I AS Remainder
FROM Tally T1
JOIN Tally T2 ON T1.I >= T2.I)
SELECT R.[Integer] AS PrimeNumber
FROM Remainders R
GROUP BY R.[Integer]
HAVING COUNT(CASE WHEN R.Remainder = 0 THEN 1 END) <= 2
ORDER BY R.[Integer];
This is pretty fast when you do it for 1,000 rows, but (unsurprisingly) execution time starts to exponentially increase as you increase the range.