We use cookies to ensure you have the best browsing experience on our website. Please read our cookie policy for more information about how we use cookies.
  • HackerRank Home

    HackerRank

  • |
  • Prepare
  • Certify
  • Compete
  • Hiring developers?
  1. Prepare
  2. SQL
  3. Alternative Queries
  4. Print Prime Numbers
  5. Discussions

Print Prime Numbers

Problem
Submissions
Leaderboard
Discussions

Sort 1025 Discussions, By:

recency

Please Login in order to post a comment

  • matthewgin10
    4 hours ago+ 0 comments

    in MS SQL to output all numbers in one line:

    SELECT STRING_AGG(NUM, '&') 
    FROM @PRIMES
    
    0|
    Permalink
  • saiprasanthrame1
    2 days ago+ 0 comments

    with prime as ( select 2 as num union all select num+1 from prime where num<1000 ) select string_agg(num,'&') from ( select p1.num from prime p1,prime p2 where p1.num <> p2.num and p1.num%p2.num !=0 group by p1.num having count(p1.num)=998)a option (maxrecursion 1000);

    0|
    Permalink
  • farshidcivil
    4 days ago+ 0 comments

    solution in ms sql (without recursive, For Dummies :D)

    DECLARE @counter INT;
    DECLARE @numbers VARCHAR(700) = '2&3';
    DECLARE @my_number INT = 4;
    DECLARE @your_number INT = 1000; -- Specify the upper limit here
    
    WHILE @my_number <= @your_number
    BEGIN
        SET @counter = 2;
        DECLARE @is_prime BIT = 1; -- Flag variable
        
        WHILE @counter < @my_number
        BEGIN
            IF @my_number % @counter = 0
            BEGIN
                SET @is_prime = 0; -- Set flag to indicate not prime
                BREAK; -- Break out of the inner loop
            END;
            
            SET @counter = @counter + 1;
        END;
        
        IF @is_prime = 1
        BEGIN
            SET @numbers = CONCAT(@numbers, '&', @my_number);
        END;
        
        SET @my_number = @my_number + 1;
    END;
    
    SELECT @numbers AS numbers;
    
    0|
    Permalink
  • gurjeetsingh980
    4 days ago+ 0 comments

    Using recursion and co-related subquery in MSSQL:

    WITH CTE AS ( SELECT 2 as first_num UNION ALL SELECT first_num + 1 FROM CTE WHERE first_num <1000 )

    SELECT STRING_AGG(a.first_num,'&') FROM CTE AS a WHERE NOT EXISTS ( SELECT 1 FROM CTE AS b WHERE a.first_num % b.first_num = 0 AND a.first_num <> b.first_num ) OPTION(MAXRECURSION 0)

    0|
    Permalink
  • daniel_c4stagna
    5 days ago+ 0 comments
    /*
    Enter your query here.
    */
    WITH RECURSIVE t AS (
        SELECT 3 AS nums
        UNION
        SELECT nums + 2
        FROM t
        WHERE nums <= 1000
    )
    SELECT concat('2&', GROUP_CONCAT(nums SEPARATOR '&'))
    FROM t
    WHERE nums NOT IN (
        SELECT DISTINCT a.nums
        FROM t a
        JOIN t b
        ON b.nums <= FLOOR(SQRT(a.nums)) AND a.nums % b.nums = 0
    )
    
    0|
    Permalink
Load more conversations

Need Help?


View top submissions
  • Blog
  • Scoring
  • Environment
  • FAQ
  • About Us
  • Support
  • Careers
  • Terms Of Service
  • Privacy Policy