在 SQL 的“学校之门”代码战中遇到麻烦

问题描述 投票:0回答:0

我在使用 SQL 解决“学校门”的代码战挑战时遇到了很多麻烦。

我尝试使用嵌套的 for 循环,但我很难弄清楚语法是什么。我什至查看了一个 Python 解决方案,看是否可以将其转换为 SQL。到目前为止,这是我的代码:

SELECT
  n,
  ARRAY[]::integer,
  DECLARE i number(1);
  DECLARE j number(i - 1);
  BEGIN
    FOR i IN 1 .. n + 1 LOOP
      WHEN i <= n/2
      THEN BEGIN 
        FOR j IN i - 1 .. n .. i LOOP
        IF NOT EXISTS ((j + 1) % i)
        BEGIN
          ARRAY[j]::integer = NOT (ARRAY[j]::integer)
        END
        END
      ELSE j = i - 1
      ARRAY[j]::integer = NOT ARRAY[j]::integer
    END AS res
    FROM doors;

挑战链接在这里:https://www.codewars.com/kata/57c15d314677bb2bd4000017/sql

sql arrays for-loop case
© www.soinside.com 2019 - 2024. All rights reserved.