MARIADB 检查编号行是否等于 10 且值相同

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

我想检查行数是否等于 10 且值相同。 我这样插入值

INSERT test (value) SELECT 'AAA' AS value FROM seq_1_to_10;

我想检查sql中的值的数量是否等于10行,但我想在mariadb中


DO \$\$ DECLARE cp int; BEGIN SELECT count(*) INTO cpt FROM test WHERE value = 'AAA'; IF cpt != 10 THEN RAISE 'cpt'; END IF; END \$\$;

我正在寻找 mariadb 中的等效查询

我遇到了这个错误:

您的 SQL 语法有错误;检查与您的 MariaDB 服务器版本相对应的手册,了解在 '$$ DECLARE cp int; 附近使用的正确语法。 BEGIN SELECT count(*) INTO cpt FROM test WHERE value = '...' 在第 1 行

sql mariadb
1个回答
0
投票

除非您禁用了序列存储引擎,否则您的插入将按原样工作。

您也可以使用递归 cte:

insert test (value)
  with recursive c as (select 1 value union select value+1 from c where value < 10)
  select value from c

小提琴

© www.soinside.com 2019 - 2024. All rights reserved.