草庐IT

UNION-ed

全部标签

mysql - SQL - OUTER JOIN a UNION-ed 表

我是sql新手。我有三个表,我想UNION前两个表,然后OUTERJOIN第三个表的结果,只选择所需的日期。我已经做了UNION但是我不知道OUTERJOIN会怎么进来。这些是我的表格:TABLE_1|ID|Name|-------------------|1|John||2|Peter|TABLE_2|ID|Name|-------------------|3|Anne||4|May|TABLE_3|ID|Name|Date|--------------------------------|2|Peter|2019-02-13||3|Anne|2019-02-12||4|May|20

MySQL:在没有 JOIN 或 UNION 的情况下合并两个不同的表

我需要合并两个表:两者都有一个主键列日期,但具有不同的值(不同的时间间隔)。两者都有不同的(未知)列:我不知道列的名称(两个表中可能出现相同的列名),我不知道有多少列,但都是相同的类型。一个例子:table1date|colA|colB|colC2011-02-02|1.09|1.03|1.04table2date|col1|col2|col3|col42011-02-03|1.03|1.02|1.07|1.03查询的结果应该是这样的:tableResultdate|colA|colB|colC|col1|col2|col3|col42011-02-02|1.09|1.03|1.04|

mysql - 打印嵌套 Left Join + Union MySQL 查询中的所有行

我有一个查询,用于计算循环月度保留金的信息。该项目每个月都有一定的小时数分配给它,每个月的不同时间段开始(例如,2月5日至3月4日)。查询结果的列包括:项目名称记录的总小时数每月剩余小时数经期的最后一天剩余天数例如,项目A记录了15小时,每月还剩5小时。本期最后一天为11月17日,距离今天还有3天。当前查询采用4个表,这些表使用左连接来打印所有客户,即使没有记录小时数,然后它使用嵌套子查询(第8-86行)计算第2、3、4列和5。但是,第4列和第5列不会打印,它们始终显示为NULL。(那些是经期的最后一天和剩余天数)。您可以在此处的SQLfiddle链接中查看模式+查询代码:http:/

php - 如何知道 UNION mysql 查询中数据的来源

我有这个mysql结果查询:SELECT*FROM(SELECT*FROMuserAUNIONSELECT*FROMuserBUNIONSELECT*FROMuserC)ASfriendresultORDERBYcreate_dateDESCLIMIT0,15为了检索数据,我使用了mysql_fetch_array,但我想知道我提取的每一行的来源。提前致谢! 最佳答案 您可以选择一个新列,以指示数据来自哪个表。像这样的东西:SELECT*FROM(SELECT*,'userA'ASComesFromFROMuserAUNIONALL

c# - 如果使用 UNION ALL,MySqlDataReader 会为同一列返回不同的类型

我有一个循环遍历从MySqlCommand生成的DataReader,它的查询从一些字段中选择,包括2TINYINT(1)映射到bool的字段s在C#上,这正是我所期望的。当我将查询更改为执行UNIONALL时出现了问题同一张table。更改查询后,我开始收到无效转换错误。TINYINT(1)列现在返回SBytes而不是Boolean.这是MySql服务器的问题吗?MySql网络/连接器问题?这是预期的行为吗?示例查询:stringsql=@"SELECTtinyint1columnFROMmytableWHEREid=1";command.CommandText=sql;using(

python - 在 peewee union select 中放置一个空字段

我尝试选择两个具有某些公共(public)字段的表。在原始MySQL查询中,我可以这样写:SELECTt1.id,t1.username,t1.dateFROMtable1as't1'UNIONSELECTt2.id,"const_txt",t2.dateFROMtable2as't2'在该查询中,username字段不在table2中,我设置了const_txt。所以,在peewee中,我想合并两个具有相同上述情况的表。classPeeweeBaseModel(Model):classMeta:database=my_dbclassTable1(PeeweeBaseModel):id

php - ZF2 分页不适用于 Union

我正在使用PHP和ZendFramework2.3.3。我将Paginator用于带有Union的Select。代码是这样的:$where=newWhere();$where->like('value',"%$infoToSearch%");$select=newSelect();$select->columns(array(newExpression('DISTINCT(id)')));$select->from('products');$select->where($where);$select2=newSelect();$select2->columns(array(newExp

Mysql:如何在UNION之前添加一个虚拟列

我想为我语句的第一个并集的所有结果添加一个虚拟列'enabled'=1,为下一个联盟。这是我到目前为止的声明......SELECTp.*FROMmember_permissionsmpJOINpermissionspONp.permission_id=mp.permission_idWHEREmember_id=1UNIONSELECTpgpFROMmember_permissionsmpJOINpermission_linkplONpl.permission_group_id=mp.permission_group_idJOINpermissionspgpONpgp.permiss

mysql - UNION vs GROUP BY 或更好的解决方案

我有这样一种情况,我在数据库表中有数十万行,假设有8列,其中前两列索引(每列两个索引,两列一个复合索引),我有两个带有groupby和union的SQL查询:SELECTMIN(columnOne),columnTwoFROMMyTableWHEREcolumnTwoIN(1,2,3)GROUPBYcolumnTwo和SELECTMIN(columnOne),columnTwoFROMMyTableWHEREcolumnTwo=1UNIONSELECTMIN(columnOne),columnTwoFROMMyTableWHEREcolumnTwo=2UNIONSELECTMIN(co

mysql - 为什么 UNION ALL 似乎要等待两个查询完成?

运行此查询:selectnull,"hello"unionallselectsleep(4),"world";在5.5.29上没有按预期立即返回第一行。相反,我必须等待4秒才能得到任何东西。如何让MySQL立即返回第一行?我正在尝试测试对慢速查询的处理。将它分开是没有意义的,因为那时我会测试其他东西。 最佳答案 HowcanImakeMySQLreturnthefirstrowrightaway?分别运行两个查询而不是使用UNION。我承认这个答案可能看起来有些老套,但它可能是您问题的唯一真实答案。它必须执行第二个查询的一个原因是U