Skip to content

Instantly share code, notes, and snippets.

@a-suenami
Created December 14, 2015 10:49
Show Gist options
  • Select an option

  • Save a-suenami/a497c72842f0f2e332f4 to your computer and use it in GitHub Desktop.

Select an option

Save a-suenami/a497c72842f0f2e332f4 to your computer and use it in GitHub Desktop.
PostgreSQL で FizzBuzz
WITH RECURSIVE fizzbuzz(n, fizzbuzz) AS (
VALUES (1, '1')
UNION
SELECT
n + 1,
CASE
WHEN (n + 1) % 15 = 0 THEN
'FizzBuzz'
WHEN (n + 1) % 3 = 0 THEN
'Fizz'
WHEN (n + 1) % 5 = 0 THEN
'Buzz'
ELSE
(n + 1)::VARCHAR(8)
END
FROM
fizzbuzz
)
SELECT * FROM fizzbuzz LIMIT 30;
1 | 1
2 | 2
3 | Fizz
4 | 4
5 | Buzz
6 | Fizz
7 | 7
8 | 8
9 | Fizz
10 | Buzz
11 | 11
12 | Fizz
13 | 13
14 | 14
15 | FizzBuzz
16 | 16
17 | 17
18 | Fizz
19 | 19
20 | Buzz
21 | Fizz
22 | 22
23 | 23
24 | Fizz
25 | Buzz
26 | 26
27 | Fizz
28 | 28
29 | 29
30 | FizzBuzz
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment