我在这里查看了if语句。我发现了一些东西,但我在找出正确的语句公式时遇到了问题。我在数据库中有2个表,其中包含以下2个字段table1rct_app_idtable2uid现在如果uid字段与我希望的rct_app_id字段匹配echo"GreenLight";如果他们不匹配echo"NoGo"这是我的公式functionquery($query){global$connection;returnmysqli_query($connection,$query);} 最佳答案 试试这个。但请记住,人们很难通过点点滴滴弄清楚发生了什么,
我写了这个查询:SELECTcola,colb,colc,CASEcolbWHEN'6kHcnevOJOSU'THEN0WHEN'g45ujP0td6nw'THEN1WHEN'v83f15lALyFs'THEN2ENDASsorFROMmytable'sor'列正确返回,问题是查询返回所有行,而不仅仅是其中一种情况与colb匹配的行!我怎样才能让它只返回匹配的行?我需要添加WHERE吗?但是我总是在没有它的情况下看到这种语法。谢谢 最佳答案 只需添加一个where子句:SELECTcola,colb,colc,(CASEcolbWH
我有这个问题:SELECTr.*,d.rateNameFROMratingsrLEFTJOINrate_datadON(r.rateID=d.rateIDANDd.rateName!='')ORDERBYr.rateTimeDESC这个工作正常。现在我有了第二个数据表。在一个查询中使用IF进行更改,还是进行两个查询并合并结果的唯一方法?我试着向你展示我的意思:SELECTr.*,d.rateNameFROMratingsr(IFr.isOther==0)LEFTJOINrate_datadON(r.rateID=d.rateIDANDd.rateName!='')(ELSEIFr.is
UPDATEcrm_accountsSETreg="Sim"WHEREage>=17ANDage0.00ANDtype="Júnior";UPDATEcrm_accountsSETreg="Não"WHEREage>=17ANDage=17ANDage该语句用于此目的,但我想简化并合并到一个案例语句中。有什么帮助吗?谢谢。 最佳答案 看起来你想要这样的东西:UPDATEcrm_accountsaSETa.reg=CASEWHENa.balance>0.00THEN'Sim'WHENa.balance=0.00THEN'Não'ELS
这应该很简单,但我一直坚持下去,在这里找不到答案。我想计算一个表中与给定user_id匹配的记录数,如果该user_id存在于另一个表中,否则返回-1。类似于:SELECTCOUNT(*)FROMtable_1WHEREuser_id=(IFEXISTStable_2.user_id='22'),ELSE-1;总而言之,如果table_2包含一个user_id为22,则返回table_1中带有user_id为22,否则返回-1。请问我该怎么做?(注意。澄清一下,user_id不是两个表中的主键)编辑:添加表格示例:table_1---------------------user_id|
我有一个问题:SELECTt.diapason,COUNT(distinctuser_id)AS'number_of_users'FROM(SELECTp.user_id,p.amountastotal,CASEwhenamount100andamount150then'>150+'ENDASdiapasonFROM(SELECTpayments.user_id,SUM(amount)ASamountFROMpaymentsINNERJOIN(SELECTDISTINCTuser_idFROMactivitywherelogin_timebetween'2018-04-12'and'2
有没有办法只在满足特定条件时才对行求和?如果不满足,则必须将它们复制到新表中。例如,如果我有这张表|id|A|B|--------------|1|a|2||1|b|4||1|c|1||2|a|4||3|a|1||3|b|5|我想要这样的输出|id|A|B|--------------|1|a,b|6||1|c|1||2|a|4||3|a,b|6|它只会在“A”列是“a”或“b”时求和,如果它是“c”,它只会复制值 最佳答案 您可以在两个不同的Select查询中执行此操作。在第一个Select查询中,只考虑A具有值“a”或“b”的情
enterimagedescriptionhere我想使用连接查询将学生的许可状态汇总为一个结果。tbl_student和tbl_trns_clr例如,如果所有办公室状态都已清除,则备注已清除否则,如果一个办公室未清除,则备注未清除SELECT*FROM`tbl_student`asAjoin`tbl_trns_clr`asBonB.EDP=A.EDPANDCASEWHEN(SELECTCOUNT(*)FROMtbl_trns_clrWHEREB.clr_status='NotCleared'ANDA.EDP=B.EDP)=0THEN'Cleared'END)asclr_status我
我有一个查询,它只是从3个表中进行选择。从评论表中选择一篇文章的所有评论从UserID表中选择以查找其类型的用户如果用户是一种类型,则搜索一个表...否则搜索另一个表以获取最终信息。我该怎么做?我对MySQL有点陌生,非常感谢您的耐心等待!PS-如果不清楚请告诉我...谢谢! 最佳答案 OK那么假设类型条件是-如果用户如果类型为“foo”,则搜索表“foovalues”,否则搜索表“finalvalues”....假设表结构如下评论评论ID用户身份文章ID用户用户身份用户类型DeclareTestUserTypevarchar(3)
如果确实存在,是否有一种按列排序的方法?即:SELECT*ORDERBYIF(EXISTS(order_column),order_columnASC,name_columnDESC)谢谢! 最佳答案 您可以改用ISNULLORDERBYISNULL(order_column,name_column)不确定如何添加DESC或ASC... 关于sql-按IFEXISTS排序,我们在StackOverflow上找到一个类似的问题: https://stackove