图上的正弦曲线-SQL

图上的正弦曲线-SQL,sql,math,Sql,Math,我试图在SQL中创建一个简单的正弦曲线,它在值(0-23)之间交替 我有以下变量:x,它是当前偏移量。y是目标偏移量,z是我的最大值(23) 有人能帮我表达一下吗?我已经在谷歌上搜索并阅读了相关信息,但还没有让它发挥作用 如果有任何答案,那就太好了 致以最良好的祝愿, Tom您需要某种虚拟行集来完成此操作 在Oracle的中: SELECT level - 1, SIN((level - 1) * 3.141592653 / 12) FROM dual CONNECT BY

我试图在SQL中创建一个简单的正弦曲线,它在值(0-23)之间交替

我有以下变量:x,它是当前偏移量。y是目标偏移量,z是我的最大值(23)

有人能帮我表达一下吗?我已经在谷歌上搜索并阅读了相关信息,但还没有让它发挥作用

如果有任何答案,那就太好了

致以最良好的祝愿,
Tom

您需要某种虚拟行集来完成此操作

在Oracle的

SELECT  level - 1, SIN((level - 1) * 3.141592653 / 12)
FROM    dual
CONNECT BY
        level <= 24
PostgreSQL
中:

SELECT  level, SIN(level * 3.141592653 / 12)
FROM    generate_series(0, 23) level
SELECT  level, SIN(level * 3.141592653 / 12)
FROM    (
        SELECT  0 AS level
        UNION ALL
        SELECT  1 AS level
        UNION ALL
        …
        /*
        Yes, you need to repeat it 24 times.

        Everyone who reads it: please call MySQL and ask them
        to implement generate_series.

        Thanks.
        */
        UNION ALL
        SELECT  23 AS level
        ) q
在MySQL中:

SELECT  level, SIN(level * 3.141592653 / 12)
FROM    generate_series(0, 23) level
SELECT  level, SIN(level * 3.141592653 / 12)
FROM    (
        SELECT  0 AS level
        UNION ALL
        SELECT  1 AS level
        UNION ALL
        …
        /*
        Yes, you need to repeat it 24 times.

        Everyone who reads it: please call MySQL and ask them
        to implement generate_series.

        Thanks.
        */
        UNION ALL
        SELECT  23 AS level
        ) q

您需要某种类型的虚拟行集来执行此操作

在Oracle的

SELECT  level - 1, SIN((level - 1) * 3.141592653 / 12)
FROM    dual
CONNECT BY
        level <= 24
PostgreSQL
中:

SELECT  level, SIN(level * 3.141592653 / 12)
FROM    generate_series(0, 23) level
SELECT  level, SIN(level * 3.141592653 / 12)
FROM    (
        SELECT  0 AS level
        UNION ALL
        SELECT  1 AS level
        UNION ALL
        …
        /*
        Yes, you need to repeat it 24 times.

        Everyone who reads it: please call MySQL and ask them
        to implement generate_series.

        Thanks.
        */
        UNION ALL
        SELECT  23 AS level
        ) q
在MySQL中:

SELECT  level, SIN(level * 3.141592653 / 12)
FROM    generate_series(0, 23) level
SELECT  level, SIN(level * 3.141592653 / 12)
FROM    (
        SELECT  0 AS level
        UNION ALL
        SELECT  1 AS level
        UNION ALL
        …
        /*
        Yes, you need to repeat it 24 times.

        Everyone who reads it: please call MySQL and ask them
        to implement generate_series.

        Thanks.
        */
        UNION ALL
        SELECT  23 AS level
        ) q

发布您的尝试。这不是免费的工作交换!你能更详细地解释一下你的预期结果吗?…你能解释一下为什么你要用SQL来做这件事吗?我不会告诉任何人做我的工作!我只是请求他们帮助我,这样我就可以学习正弦曲线是如何工作的!这个表达应该相当简单。。只有我一个人不能让它发挥作用。。我想向线性图中添加一些测试数据。我希望测试数据是正弦形式,在0和23之间交替,每5次交替。也就是说,如果从5开始,第二个是10,第三个是15,第四个是20,第五个是25。。等等这是一个非常有效和有用的问题。我自己也做过很多次数据建模。请发布您的尝试。这不是免费的工作交换!你能更详细地解释一下你的预期结果吗?…你能解释一下为什么你要用SQL来做这件事吗?我不会告诉任何人做我的工作!我只是请求他们帮助我,这样我就可以学习正弦曲线是如何工作的!这个表达应该相当简单。。只有我一个人不能让它发挥作用。。我想向线性图中添加一些测试数据。我希望测试数据是正弦形式,在0和23之间交替,每5次交替。也就是说,如果从5开始,第二个是10,第三个是15,第四个是20,第五个是25。。等等这是一个非常有效和有用的问题。我自己也做过很多次数据建模,这对我真的很有帮助!谢谢这真的帮了我的忙!谢谢