我想用函数实现这样1个功能
用户表user(主键  姓名 )  
              1    张华
权限表 qx  (主键  姓名 所属公司)
               001  张华 北京公司
               002  张华 上海公司我想使用一个函数实现输入员工姓名,返回公司列表,用sql语句调用怎么用?我现在软件是我用的平台显示列表那个地方只能配置sql,因为要通用,我才想把这个具体处理逻辑放数据库后台。
如同oracle的自定义函数f_add
select f_add(1+2) from dual;
不知道mysql怎么实现?

解决方案 »

  1.   

    一样的,select f_add(1+2) from dual;
    你只要修改f_add即可
      

  2.   

    select f_add(1+2);mysql不用dual都行...
      

  3.   

    MYSQL函数无法返回一个结果集。它只能返回单个元素。
      

  4.   

    这不用函数啊  一条sql就出来的为啥用函数
    select 公司
    from qx 
    where 姓名='xxxx'
      

  5.   

    是这样的,现在用1个平台,用一个语句可以实现,但几个地方都用,需要每个地方都拷贝这个语句,我想实现公用,想到用数据库处理。把具体逻辑写在自定义函数中,调用的地方类似select f_add() from dual如果修改时候,我只在统一函数中修改,那个平台现在只能用sql语句设置
    例如:平台设置显示所属公司的列表:用户表和用户授权表关联视图 select right.corpname from user,right where user.name=right.name
    我想在数据库用自定义函数可以么
    然后我在平台设置这里用
    select   f_dy(name) from dual 
    关键我想实现公用。现在平台支持不好。
      

  6.   

    我目的是实现共享调用,且只支持sql,不支持sp
      

  7.   

    MySQL 不支持函数返回记录集。
      

  8.   

    例如:平台设置显示所属公司的列表:用户表和用户授权表关联视图 select right.corpname from user,right where user.name=right.name
     我想在数据库用自定义函数可以么在MYSQL中不行,用SP来完成 OR 直接用VIEW