当前位置: 首页 > 知识库问答 >
问题:

对不同列值的查询累加设置限制

司徒耀
2023-03-14

假设我有一个表,表中有一组不同的列(表外),

Table 
   id
   col1 INTEGER(1),   // 0 || 1
   col2 // --||--
   col3 // --||--
   col4 // --||--

这是可行的,但是如果我将结果限制为16行,那么我可能得到15行,其中col1=1;可能得到1行,其中col2=1;然后是col3、col4-没有结果。

亲爱的伙计们;有一种方法可以在1查询中做到这一点吗(我想没有)

共有1个答案

姜经武
2023-03-14

我想您正在寻找UNION ALL构造。你可以简单地写

SELECT * FROM tab WHERE col1 = 1
UNION ALL
SELECT * FROM tab WHERE col2 = 2
UNION ALL
SELECT * FROM tab WHERE col3 = 3

诸如此类。只需注意这样一个事实,即结果中的行可能是重复的(如果它们满足条件中的更多条件)。

 类似资料:
  • 我想用不同的列值执行相同的SQL查询,即:我有一个如下表: 从上表中,我想获取员工组的和。请建议我如何在不执行多次的情况下进行查询以获取上述数据。

  • 本文向大家介绍MySQL查询为表中的值设置不同的组合?,包括了MySQL查询为表中的值设置不同的组合?的使用技巧和注意事项,需要的朋友参考一下 让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 这是对MySQL组合的查询- 这将产生以下输出-

  • 问题内容: 我想添加表的两列值并按降序对其进行排序。例如: 考虑到上表,我想要一个SQL查询,它给我的结果如下: 是否有任何SQL查询来做到这一点? 问题答案: 没有用于这种水平聚合的内置函数,您可以执行以下操作:

  • 我试图建立MySQL查询与多个连接,其中加入的值的总和。有3个表:保管人,帐户和存款。账户和存款通过客户的customer_id字段连接到客户。在查询结束时,所有客户都按group_id分组: 问题是:连接的行重复,而我必须进行一些分析:汇总所有存款金额-您可以在这里看到我针对存款金额的解决方法。但真正的问题是如何计算“客户的首次存款”。在对结果进行分组之前,我们可能会看到: 所以,我需要的是总和

  • 问题内容: 我想读取一个表,该表的值将是sql查询结果的列名。例如,我将table1作为.. 如果看到id = 0,则name的值为ax,name2为bx,name3为cx。将行显示为id,name,name2,name3而不是行。现在,我希望查询结果看起来像这样: 有人可以帮助我实现这一目标吗? 问题答案: 这是通过 数据透视表完成的 。按分组,您为要在列中捕获的每个值发出语句,并使用诸如聚合之

  • 问题内容: 如果我有一个包含以下字段的表格 我将如何编写查询以返回每个的最新/前3个项目(基于)。 因此,结果可能看起来像 返回特定的最新项目很容易,但是我只是不认为如何针对上述情况进行操作。我也觉得它应该死得很简单! 编辑: 抱歉,我错过了一些关键信息。这是针对SQL2000的,因此无法使用! 问题答案: 对于SQL 2000,我建议升级到受支持的平台。 但是如果你坚持的话。