这是我的MySQL表布局+----+---------+----------+---------+-------+|id|AssetId|FromType|ToType|Amount|+----+---------+----------+---------+-------+|1|1|Bank|Asset|10000|+----+---------+----------+---------+-------+|2|2|Bank|Asset|5000|+----+---------+----------+---------+-------+|3|2|Asset|Bank|4000|+----
如果这个问题已经被问到并得到回答,请原谅我,我已经搜索并找到了一些看起来相似的问题,但我是SQL的新手,无法根据我的需要调整它们。如果我没有使用正确的术语,也请原谅我,我知道当有人问问题并且他们甚至不知道足够的知识来询问他们需要什么时,这会很烦人。好吧,我不明白源数据到底是什么样子的,这就是我得不到我想要的东西的原因。感谢@goran插入我将真正的源表发布到这里(我仍然不打算发布,因为我懒得对它们进行适当的编辑以便于查看和保护无辜者,但我应该有至少在询问之前将它们打印出来)。下面是新修改的示例表,但我仍然没有弄清楚如何实现将所有内容都放在一行中的最终目标。table_one:idnam
如何从MySQL中选择sum(maxremain(x+y+z)),来捕获sum(1200+1300+1400)?id|user|remain-----------------1|x|1000----------------2|x|1200----------------3|y|1100----------------4|y|1300----------------5|z|1200----------------5|z|1400----------------using(SqlConnectioncn=newSqlConnection(Class1.x)){cn.Open();strin
我的transactions表中有一个金额列表。我想找出总金额大于50的每个person_id的总交易金额。我希望这会起作用,但它没有:SELECT(SELECTSUM(amount)FROMtransactionsWHEREperson_id=p.id)AStotal_amountFROMpeopleASpWHEREtotal_amount>50我能让它工作的唯一方法如下:SELECT(SELECTSUM(amount)FROMtransactionsWHEREperson_id=p.id)AStotal_amountFROMpeopleASpWHERE(SELECTSUM(amou
我有两个模型users和posts。用户可以投票和查看帖子#usersidname#postsidcount_votescount_viewsusers_idcreated_atupdated_at我想要在过去24小时内获得最多选票和帖子浏览量的用户。观看次数和票数最多的人获胜。我尝试了什么我有这个SQL查询,它很好,但我想让用户获得最多的选票,这个查询给了我所有用户,但我不知道如何添加count_viewsselectu.nameas"Name",sum(p.count_votes)frompostspinnerjoinusersuonp.user_id=u.idwherep.cre
你好,我目前正在处理我不太明白的SQL问题。这是我正在使用的架构:这是我遇到的问题:--3找出每个Actor的名字、姓氏和科幻电影的总长度。也就是说,结果应该列出所有Actor的名字(即使Actor没有出演过任何科幻电影)以及他们出演过的科幻电影的总时长。到目前为止我有SELECTactor.first_name,actor.last_name,(SELECTSUM(film.length)fromfilmINNERJOINfilm_categoryONfilm.film_id=film_category.film_idINNERJOINcategoryONfilm_category.
将这段SQL作为更新脚本,我尝试添加一个工作轮来解决无法将要更新的表作为语句中的子句包含在内的问题,因此使用子查询,但很难做到这一点工作。本质上,我需要用表2中某个字段的总和来更新表1中的值,但仅当其他两个字段在几个表中匹配并且基于field6时,限制才应用于更新子句。UPDATEtable1WSETField1=(SELECTfield2FROM(SELECTA.id,B.field3,SUM(A.field2)ASfield2FROMtable2A,table3B,table4PWHEREA.id=B.idANDP.field6=B.field6)B)WHEREW.field6=B
我想在MySQ中查询三个表。如下:**Table:Leaderboard**Name|Score------------James|1Steve|2Dave|5**Table:Actions**Name|Action|Time----------------------------James|Ateanapple|01:00James|Kickedadog|02:00Steve|Ateadog|03:00Steve|Kickedahen|01:00Dave|died|02:00**Table:Items**Name|Item|Time--------------------------
假设我有一个选择查询:SELECT*FROMtablename表格中的列是:field1、field2和field3有谁知道是否有可能获得只有1行和1个字段的结果集,列的值以逗号分隔,如下所示:"fieldvalue1,fieldvalue2,fieldvalue3"问题是我事先不知道表的列名...另一个问题是准备好的语句不是要走的路,因为所有这些都应该在触发器内完成,而MySQL不允许在触发器内进行动态游标/选择。 最佳答案 我进行了一些研究,结果只得出GROUP_CONCATenating正确的列名。但问题是,SELECT(SE
项目有_many:itemsItembelongs_to:project我正在尝试按项目各自项目的总价对项目进行排序。像这样的东西:Project.includes(:items).order('SUM(items.price)')使用这段代码,ActiveRecord只返回第一个项目。我错过了什么? 最佳答案 我还没有尝试过v3的东西,但我认为它会是这样的Product.joins(:items).group('products.id').order('SUM(items.price)')