评估 MySQL 中的表达式

2024-02-15

我有一个包含 a、b、expr 列的表,expr 是其他列的表达式。 例如表包含

a   b   expr
------------
2   5   a+b
3   4   a*b+3

我喜欢简单地运行一个查询并获得流动的结果:

a | b | expr 
------------ 
2 | 5 | 7 
3 | 4 | 15

我在文档中搜索函数、过程等,但我做不到。 请帮我!


这是我制作的解决方案fun。如果这不是一次性的事情,请考虑使用真正的编程语言来解决这个问题。

drop table if exists Table1;
CREATE TABLE Table1
    (`a` int, `b` int, `expr` varchar(6))
;

INSERT INTO Table1
    (`a`, `b`, `expr`)
VALUES
    (2, 5, 'a+b'),
    (3, 4, 'a*b +3')
;

drop table if exists Table2;
CREATE TABLE Table2
    (`a` int, `b` int, `expr` int)
;

drop procedure if exists curdemo;
DELIMITER $$
CREATE PROCEDURE curdemo()
BEGIN
  DECLARE done INT DEFAULT 0;
  DECLARE seqel VARCHAR(255);
  DECLARE cur1 CURSOR FOR SELECT CONCAT('INSERT INTO Table2 (a, b, expr) SELECT a, b, ' , expr, ' FROM (SELECT ', a, ' as a, ', b, ' as b) sq;') FROM Table1;
  DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;

  OPEN cur1;

  REPEAT
    FETCH cur1 INTO seqel;
    IF NOT done THEN
       SET @sql:=seqel;
       PREPARE stmt FROM @sql;
       EXECUTE stmt;
       DEALLOCATE PREPARE stmt;
    END IF;
  UNTIL done END REPEAT;

  CLOSE cur1;
END $$
DELIMITER ;

CALL curdemo();

SELECT * FROM Table2;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

评估 MySQL 中的表达式 的相关文章

  • 什么时候应该使用 C++ 而不是 SQL?

    我是一名 C 程序员 偶尔使用 MySQL 来处理数据库 但我的 SQL 知识相当有限 但我肯定愿意改变这一点 目前 我正在尝试仅使用 SQL 查询对数据库中的数据进行分析 但我准备放弃了 转而将数据导入到C 中 用C 代码进行分析 我和同
  • 无法在 Mac 上启动 MySQL

    使用 Brew 安装后 我无法运行 MySQL 我使用的是 OS X El Capitan 版本 10 11 3 和 MySQL Server 版本 5 7 11 当我启动服务器时 我收到 启动 MySQL 错误 服务器退出而不更新 PID
  • sql查询获取从一月到当月的所有数据,即使没有记录

    我不擅长 sql 所以任何帮助世界都很棒 我有一个 SQL 查询 可以获取从一月到当月注册的记录 我的代码示例 SELECT DatePart YEAR p createStamp as TheYear DatePart MONTH p c
  • 如何搜索例程的内容/(SP-触发函数)

    我需要在数据库内所有例程的例程主体 存储过程 函数 触发器 中搜索文本 我该怎么做 Thanks SELECT OBJECT NAME object id FROM sys sql modules WHERE definition LIKE
  • 如何通过子 POJO 的属性过滤复合 ManyToMany POJO?

    我有两个像这样的房间实体 Entity public class Teacher implements Serializable PrimaryKey autoGenerate true public int id ColumnInfo n
  • mysql 中的二进制、十六进制和八进制值

    我对在 mysql 数据库中使用二进制 十六进制和八进制系统非常感兴趣 首先 请给我一个建议 为什么我们在存储信息时需要它们 因为信息太多 或者为什么 另外 哪种类型的值必须存储在标记系统中 另外这里还有像 这是例子 gt SELECT 5
  • JDBC插入实数数组

    我试图将一个真实的数组插入到 postgresql 数组中 该表的定义是 String sqlTable CREATE TABLE IF NOT EXISTS ccmBlock sampleId INTEGER block REAL 插入内
  • H2 用户定义的聚合函数 ListAgg 不能在第一个参数上使用 DISTINCT 或 TRIM()

    所以我有一个 DB2 生产数据库 我需要在其中使用可用的函数 ListAgg 我希望使用 H2 的单元测试能够正确测试此功能 不幸的是H2不直接支持ListAgg 但是 我可以创建一个用户定义的聚合函数 import java sql Co
  • 内置函数将每个单词的第一个字母大写

    如果 SQL Server 中已存在此类函数 我不想为此创建自定义函数 输入字符串 This is my string to convert预期输出 This Is My String To Convert SET ANSI NULLS O
  • 如何通过 SQL 表关联 SQL 中的实体

    我是数据库设计的初学者 我需要为项目创建数据库 我可以用面向对象的术语解释我想要做什么 值得庆幸的是 数据库专家会很友善地向我解释如何在数据库方面处理这个问题 我想创建一个与位置实体 州 城市 有关系的用户 ID 名称 实体 所以在编程语言
  • 将庞大数据库从亚马逊RDS导出到本地mysql

    我在 Amazon RDS 上有一个 mysql 数据库 大约 600GB 数据 我需要将其移回本地专用服务器 但我不知道从哪里开始 每次我尝试初始化 sqldump 时它都会冻结 有没有办法将其移至 S3 甚至可能在开始下载之前将其分成更
  • PHP MySQL 使用选项/选择 HTML 表单标签进行多重搜索查询

    我正在尝试使用两个搜索字段设置基本的 MySQL LIKE 搜索 我不想拥有它 所以它有多个可选搜索字段 例如if isset POST city isset POST name 我不知道如何用 HTML 来做到这一点
  • 如何检测Mysql/innodb中的死锁?

    我知道在 Innodb 中使用事务时不可避免地会发生死锁 并且如果应用程序代码正确处理死锁 它们是无害的 正如手册所说 只需再试一次 所以我想知道 如何检测死锁 死锁是否会发出一些特殊的 mysql 错误号 如果重要的话 我正在使用 PHP
  • 如何通过Elasticsearch模糊匹配电子邮件或电话?

    我想通过 Elasticsearch 对电子邮件或电话进行模糊匹配 例如 匹配所有以以下结尾的电子邮件 gmail com or 匹配所有电话开头136 我知道我可以使用通配符 query wildcard email gmail com
  • SELECT max(x) 返回 null;我怎样才能让它返回0?

    运行以下命令时如何返回 0 而不是 null SELECT MAX X AS MaxX FROM tbl WHERE XID 1 假设没有XID 1的行 or SELECT coalesce MAX X 0 AS MaxX FROM tbl
  • MYSQL从每个类别中随机选择一条记录

    我有一个数据库Items表看起来像这样 id name category int 有几十万条记录 每个item可以是 7 种不同的之一categories 对应于categories table id category 我想要一个从每个类别
  • 从Django中具有外键关系的两个表中检索数据? [复制]

    这个问题在这里已经有答案了 This is my models py file from django db import models class Author models Model first name models CharFie
  • 通过触发器应用表的列权限

    现在 我有一个名为 Members 的表 其中包含内容 分为联系人数据 银行数据 现在 管理员应该能够创建 更新 删除用户 这些用户保存在另一个表中 该表只能访问管理员 用户应该获得自己的 mysql 用户帐户 管理员还应该能够设置权限 例
  • 如何在 SQL Server 中连接

    我的数据库没有特定的列 因此我通过开关在查询中创建了一个列 我需要的是将此列与数据库中的另一列连接起来 select certificateDuration DurationType case when certificateDuratio
  • MySQL 转储未知选项“-no-beep”

    在旧服务器上我使用了mysql转储命令来备份 MySQL 数据库 在新服务器上 MySQL 版本为 5 6 相同的命令给出了错误 unknown option no beep 无论它插入什么 我也在互联网上搜索过 但找不到任何帮助 在 my

随机推荐

  • 带总和的多重左连接

    我正在尝试在 sql 查询中使用 Left Join 在表中显示包含 3 个表总和的信息 带有数据表插件 我使用以下查询成功编辑服务器端查询并通过两个表之间的第一个连接 t1 budget t2 budget changes 显示正确的数据
  • wxHaskell 和 Gtk2HS 的相对优点是什么?

    哪个更适合使用 Haskell wxWidgets 开发 GUI 应用程序 通过wx哈斯克尔 http haskell org haskellwiki WxHaskell 或 GTK 通过Gtk2HS http www haskell or
  • UITableView 在视图出现之前重置其背景颜色

    我正在使用可能有点奇特的方式来初始化我的 UI 组件 我以编程方式创建它们 其中有一个 UITableView 实例 我在初始化时立即设置其背景颜色 如下所示 class MyViewController UIViewController
  • 如何在 sqlalchemy 中比较日期?

    我有以下简单的设置 其中 fromDate 和 toDate 是格式为 YYYY MM DD 的字符串 class SomeType Base date Column DateTime def findAll fromDate toDate
  • MongoDB C# foreach BsonElement

    我有一个 C 类 我实例化并使用它在集合中执行 CRUD 操作 public class Property BsonId public long id get set BsonElement address line public stri
  • 无法让 rspec、spork 和调试器发挥良好作用

    Given I am a dumb programmer and I am using rspec and I am using spork and I want to debug mmm let s saaay a spec for Ph
  • JPA 中的引用完整性约束违规错误

    我正在尝试解析网络请求并将其保存到数据库 我有 3 个模型 第一个节点是 virtualDocument 这是uniq表 根据请求url VirtualRequest 表包含所有请求主体 HttpHeaderList 表根据其 virtua
  • 原始 Win32 中的 Rich Edit 控件

    Rich Edit Controls 的文档真的像看起来那样糟糕 错误吗 现在 我正在手动调用 LoadLibrary riched20 dll 以便显示 Rich Edit 控件 Rich Edit 的文档在使用 Rich Edit 控件
  • 下拉列表中页面加载时已选择的选项,也可更改[重复]

    这个问题在这里已经有答案了 可能的重复 PHP 预选择下拉选项 https stackoverflow com questions 3030604 php pre select drop down option 我的 php 项目中有一种情
  • 是否可以将“plt.yticks”放在水平条之间?

    我试图将价值放入plt yticks酒吧之间 不幸的是 我不知道该怎么做 有可能吗 如果有的话 有人可以给一些提示吗 import pandas as pd import numpy as np import matplotlib pypl
  • 从信号图像(RGB)中去除背景“噪音”

    I have some signal images 正如您所看到的 其中一些包含颜色信号 一些只是灰色 黑色信号 我的任务是提取白色背景的纯信号仅有的 这意味着我需要删除图像中除信号之外的所有内容 我检查了虚线 点线 实线 顶部和底部 具有
  • 当我两次启动闹钟时会发生什么?

    我正在克服困难 当然 这并不那么复杂 以避免两次启动警报 基本代码如下 AlarmManager mgr AlarmManager getSystemService Context ALARM SERVICE Intent i new In
  • ElasticSearch 服务启动但无法访问并且不执行任何日志记录

    Azure 中 Linux Ubuntu 16 04 3 VM 上的 ElasticSearch 6 2 2 它一直运行良好 但几天前我重新启动机器后 我根本无法启动 ElasticSearch 服务 问题已在这里分享和解决 Elastic
  • 更改相关产品标题在 WooCommerce 中添加产品名称

    我有这段代码 试图将 相关产品 翻译成 这些产品与产品名称搭配得很好 这是我的代码 add filter gettext change related products title 10 3 function change related
  • 在编译时将 this 指针和类方法的参数传递给本地 lambda 函数

    假设您有一个场景 当您想要创建一个constexprlambda 在编译时计算某些内容的方法中 struct A int a constexpr A int a a a constexpr auto operator const A rhs
  • “if-then-else”(总是)可以被函数调用替换吗?

    这个问题主要是出于对 PL 如何工作的好奇 实际上我是在查看 SML 时想到的 SML 与 Haskell 的不同之处在于前者使用按值调用 但我的问题是关于 Haskell 的 Haskell 据我了解 具有 按需调用 语义 这是否意味着如
  • 快速的射弹并不总是能击中

    因此 对于我的游戏 有一个快速移动的子弹对象 其精灵大小为 5x5 大约 以大约 30 的速度移动 需要撞击厚度仅为 5 像素左右的相对较薄的 Enemy 物体 子弹以一定的固定距离间隔穿过敌人而不会发生碰撞 I think这是因为子弹移动
  • DataMan iPhone 应用程序如何在后台工作

    AppStore 上的 DataMan 应用程序 DataMan Lite 是该应用程序的免费版本 有助于监控您的数据使用情况 http www iphonelife com blog 2686 monitor your data usag
  • matlab如何求解大型、对称和稀疏线性系统

    也就是说 当我这样做时A b对于非常大 对称且稀疏的 A matlab 使用什么算法 如果矩阵是稀疏且对称正定的 但有very窄带 然后使用专门的带解算器 大多数矩阵没有足够窄的带来触发这种情况 通常 它会在样条工具箱中提供一维样条 二维问
  • 评估 MySQL 中的表达式

    我有一个包含 a b expr 列的表 expr 是其他列的表达式 例如表包含 a b expr 2 5 a b 3 4 a b 3 我喜欢简单地运行一个查询并获得流动的结果 a b expr 2 5 7 3 4 15 我在文档中搜索函数