代码之家  ›  专栏  ›  技术社区  ›  krtsz

MySql-如何将存储的函数存储在表中?

  •  0
  • krtsz  · 技术社区  · 7 年前

    我想定义一个规则集来确定结果的优先级。

    我想创建一个像

    +--------------------------------+------------+  
    |       operation_to_do          | multiplier |
    +================================+============+  
    |  function(){return age+birth}  |      5     |
    +--------------------------------+------------+ 
    | function(){return  footsize*2} |      8     |
    +--------------------------------+------------+
    
    0 回复  |  直到 7 年前
        1
  •  1
  •   O. Jones    7 年前

    您可以将任何想要的文本存储在表的一列中,包括程序的位和块,比如示例中的(显然)Javascript函数。但是SQL不会试图以任何方式自动运行这些程序。您需要检索这些文本值(使用SELECT查询),然后使它们从程序(nodejs?)中运行。这是可能的,但需要仔细编程。

    如果要在SQL查询中加权函数,它们需要出现在 ORDER BY

       SELECT *
         FROM your_data
        ORDER BY (  (8 * (footsize*2)) + (5 * (age+birth))