首页 > 试题广场 >

某电器商品海关进口税征收办法,起征点为500元,超出部分按以

[不定项选择题]
某电器商品海关进口税征收办法,起征点为500元,超出部分按以下2级计算:
1 、超过0至150, 税率3% 。
2、 超过150元以上 ,税率10% 。
商品进口税=(商品总额-500)*税率
程序输出:编写一个函数,实现输入商品的总额,返回该商品的进口税。下面创建函数语句正确的是:(      )
  • CREATE FUNCTION goods
    ( @total AS money)
    RETURNS money AS
    BEGIN
    declare @income money
    declare @tax money
    select @income=@total-500
    if @income<=0 set @tax=0
    else begin
    if(0<@income and @income<=150)
    select @tax=@income*0.03
    if(@income>150)
    select @tax=@income*0.1
    end
    return @tax
    END
  • CREATE FUNCTION goods
    ( @total AS money)
    RETURNS money AS
    BEGIN
    declare @income money
    declare @tax money
    set @income=@total-500
    if @income<=0 set @tax=0
    else begin
    if(0<@income and @income<=150)
    set @tax=@income*0.03
    if(@income>150)
    set @tax=@income*0.1
    end
    return @tax
    END
  • CREATE FUNCTION goods
    ( @total AS money)
    RETURNS money AS
    BEGIN
    declare @income money
    declare @tax money
    select @income=@total-500
    begin
    if(0<@income and @income<=150)
    select @tax=@income*0.03
    if(@income>150)
    select @tax=@income*0.1
    end
    return @tax
    END
  • CREATE FUNCTION goods
    ( @total AS money)
    RETURNS money AS
    BEGIN
    declare @income money
    declare @tax money
    set @income=@total-500
    if @income<=0 set @tax=0
    else begin
    if(0<@income<=150)
    set @tax=@income*0.03
    if(@income>150)
    set @tax=@income*0.1
    end
    return @tax
    END
这哪种数据库写法啊。。第九行  else begin  什么写法啊?这多了个begin  下面没有对应的end 啊
发表于 2020-03-31 22:39:30 回复(2)
( @total AS money)
这句语句是什么意思啊?

发表于 2019-09-16 08:51:11 回复(0)
这四个选项这么长,拒绝回答
发表于 2020-06-16 15:14:07 回复(1)
C选项   
没有@income小于0的处理
D选项
if(0<@income<=150)
这种连写不对
发表于 2020-06-06 16:29:35 回复(0)
 CD IF条件写错
发表于 2019-09-25 19:44:29 回复(0)
看了老半天.....
有个单纯的疑问哈,现实生活真的会写这样的sql吗? 我觉得这个放到业务层 java,python甚至前端js代码不是一两行的事吗😓? 单纯好奇哈
编辑于 2022-07-15 09:51:42 回复(0)
答案:B
A:错误。存储过程或者存储函数中,给变量的赋值的方法有两种。根据第二种,A中给income赋值的操作不符合语法。
    1.SET 变量名 = 变量值;
    2.SELECT 列名 INTO 变量名 FROM 表名 [WHERE 条件];
B:正确。
C:错误。同A
D:错误。if(0<@income <= 150) 这句不符合语法。

发表于 2022-02-10 12:34:22 回复(0)
 @total AS moneySQL中的自定义函数总共有三种
(1)标量函数——标量值函数
语法结构:
CREATE  FUNCTION  function_name(@parameter_name parameter_data_type) --(@参数名 参数的数据类型) RETURN date_type   --返回返回值的数据类型
[WITH ENCRYPTION]  --如果指定了 encryption 则函数被加密
[AS]
BEGIN
  function_body --函数体
  RETURN  表达式;
END
(2)表值函数——内联表值函数
语法结构:
CREATE FUNCTION function_name(@parameter_name parameter_data_type) --(@参数名 参数的数据类型)
RETURN table  --返回一张表
[AS]
RETURN(--返回下面空白部分所写语句中查询的表) 
(3)表值函数——多语句表值函数
语法结构:
create function 名称
([{@参数名称 参数类型[=默认值]}[,n]])
returns @局部变量 table(参数名 参数类型)
[with encryption]
[as]
begin
函数体
return 函数返回值
end
参考:https://blog.csdn.net/adreammaker/article/details/68071214

编辑于 2023-06-30 11:23:25 回复(0)
and关键字不能省
发表于 2021-07-24 20:59:05 回复(0)
有没有大佬来解答一下
发表于 2021-02-22 19:19:06 回复(0)

没搞懂,哪个大佬可以详细解答一下呢

编辑于 2021-02-22 18:33:31 回复(0)