草庐IT

mySQL查询列中的总金额(月)

我有以下格式的数据:date(mm/dd/yyyy),desc(详细说明),category(a,b,c),tran_type(借方、贷方),花费金额(金额)。我想获取以下格式的数据:category||tran_type||Jan_total||feb_total||mar_totalA||debit||$101||$201||$302A||credit||$500||$600||$200 最佳答案 这个查询应该给你所需的结果。SELECTcategory,tran_type,SUM(IF(month(date)=1,ABS(am

mysql - 如何在 MySQL If 语句中有一个范围?

我正在尝试做出一个计算联属网络营销支出的选择。我的方法很简单。SELECTmonth(payments.timestmap),sum(if(payments.amount>=29.95,4,0))AsTier4,sum(if(payments.amount>=24.95=19.95上面的代码不起作用,因为MySQL没有评估条件的第二部分。顺便说一句,它不会导致语法错误,选择将返回结果。在上面我尝试了我假设会像“amountbetween24.94AND29.94”这样工作的东西,这导致了一个错误。所以我尝试了“amount>=24.94AND”那么在MySql中是否可以使用IF进行范围

MySQL从其他表中加入下一个较低的值

我有两个表ordersidarticleamount1112250和价格idarticlemin_amountprice11142.992215.063254.5542104.352254.05621002.66prices表包含文章的ID和您必须购买的最低数量才能获得批量折扣(这将改变订单的价格)。我想将prices加入到orders中,结果如下:idarticleamountprice11142.9922504.05订单ID2高于以4.05欧元获得商品的最低价格(25),但仍低于100,您可以获得更大的折扣,因此查询将选择下一个较低的值。到目前为止我已经尝试过这个查询SELECTo

MySQL 多个 LEFT OUTER JOIN 错误

我希望有人能帮我解决我的MySQL问题。我有一个错误,如果贡献表上有一个左外连接,金额的结果是100美元(这是正确的)。如果我包含另一个表的第二个左外连接(ikes)。我有2个ikes,金额翻倍(200美元),如果我有3个ikes,金额增加三倍(300美元)。对于我的一生,我无法弄清楚这一点。ikes跟贡献数额有什么关系?我已经将查询分开,它们自己工作。但它们一起导致了问题。谁能看出问题所在?我在下面包含了查询和表格。SELECTCOUNT(i.type)ASxlike,SUM(c.amount)ASamount,w.*FROMwishwLEFTOUTERJOINcontributio

Mysql根据另一列求和列

这是我的Mysql表中的表数据t_Idt_Typet_Datet_acd_Idt_acc_Idt_Amountt_Desct_u_Idc_Id------------------------------------------------------------------102016-01-2626629400.0011202016-01-2726629160.0011312016-01-282926683.3011422016-01-2729272400.0011502016-01-27266272300.0011612016-01-282722220.0011我想要这样的结果ac

mysql - 在 mysql 或更好的 algothrim 中将每笔交易的借方与贷方相匹配?

首先让我解释一下表结构和我需要的输出。useriddateamount1232017-01-0151232017-01-0321242017-01-0421242017-01-0431232017-01-05-2借方交易为负数,正数交易为成员(member)贷方交易。通过这个查询我们可以很容易的制作出对帐单selectdateasBookingDate,if(amount0,amount,0)asCredit_Amount,(@runtot:=amount+@runtot)ASBalancefromtransactions,(SELECT@runtot:=0)cwhereuserid=

php - mysql不等于不工作

所以我将所有交易存储在具有以下结构的交易表中:+----------------+---------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+----------------+---------------+------+-----+---------+----------------+|debit_amount|decimal(10,2)|YES||0.00|||credit_amount|decimal(10,2)|YES||0.00|||flag|int(1

JSON 对象的 MySQL 聚合总和

我创建了新表并将详细信息作为JSON数据类型。我试图获取所有记录的总和。我可以获取每个值,但我不知道如何使用groupbyoptions获取总和。CREATETABLE`Sample`(`id`int(11)NOTNULLAUTO_INCREMENT,`details`jsonDEFAULTNULL,PRIMARYKEY(`id`))CHARSET=latin1;示例数据1.[{"id":1,"name":"T1","amount":"34.34","percentage":"45"},{"id":3,"name":"T3","amount":"30.34","percentage":

mysql - 如何根据字段值求和(mysql)

我得到了这个名为tb_stock的表IDAMOUNTFLAGLAST_AMOUNT15N020Y830Y746N0现在我想根据FLAG值对值求和。例如,如果FLAG值为N,它将从AMOUNT字段中求和,如果FLAG值为Y,它将从LAST_AMOUNT字段中求和。因此总数为26(5+8+7+6)。这是否可以只使用mysql来实现,还是会涉及到php?谢谢。 最佳答案 SELECTSUM(CASEWHENFLAG='Y'THENLAST_AMOUNTELSEAMOUNTEND)ASTOTALFROMtb_stock

mysql - 使用 SUM 查找列中的总金额,然后按人分组

我的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