草庐IT

if-cases

全部标签

带有嵌套 IF...END IF 的 MySQL 存储函数,语法错误,在 '' 附近使用正确的语法

我有一个目前在PHP中使用的函数,它从不同的字段编译邮寄地址,但考虑了不同地区使用的不同格式。我正在尝试将其复制为MySQL存储函数。我意识到在代码中而不是在数据库中执行此类操作通常更快,但是我们的内部网有一种方法可以让人们以只读方式输入原始MySQLSELECT命令,这样他们就可以构建高级搜索并保存查询。将使用此特定功能,以便用户可以将他们的高级搜索查询结果输出到标签布局。当我尝试使用phpMyAdmin3.4.9(最新稳定版)存储函数时,出现以下错误:#1064-YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondst

mysql - SQL WHERE 子句中的 CASE 语句

我正在尝试从我在WHERE子句中使用CASE条件的表中获取数据,目前我正在使用以下查询:-SELECTcount(enq_id)AStotal,sum(purchase_amount)ASpurchaseFROMtemp_stockWHEREpurchase_date'0000-00-00'ANDpurchase_date='2012-08-01'END但它返回0total和NULLpurchase。 最佳答案 来自yourcomment.IwanttouseCaseStatement,coulduplsclarifymeabout

mysql - 返回可变行数时,如何在 MySQL 中编写 if else-if else 查询

我在一个表中有三列:scorestatusNo.1,2,10,1,20,0,1我需要这个来编写C#风格的伪SQL:rows=empty;rows="SELECT*FROM`table`WHEREscore=1"if(rows.Count>0)//atleastonerowreturnrows;rows="SELECT*FROM`table`WHEREstatus=2"if(rows.Count>1)//morethanonerowreturnrowwithMAX(No.)fromrows;//ieMAX(No.)wherestatus=2returnrows;我希望我能说清楚。简而言之

sql - MySQL 存储过程 : Boolean Logic in IF THEN

我正在寻找在IFTHEN语句中使用逻辑运算符的正确语法(如果这在MySQL存储过程中可行)。这是我想做的事情,但我不确定我应该输入“OR”还是“||”在IF...THEN子句中:DELIMITER$$CREATEPROCEDURE`MyStoredProc`(_idINT)BEGINDECLAREtestVal1INTDEFAULT0;DECLAREtestVal2INTDEFAULT0;SELECTvalue1,value2INTOtestVal1,testVal2FROMValueTableWHEREid=_id;IFtestVal1>0ORtestVal2>0THENUPDATE

MySQL INSERT IF NOT EXIST else DELETE 行

我有一张表将另外2个表链接在一起。我有一个复选框列表,当其中一个被选中时,它会通过ajax将值发送到服务器。我想做的是,如果值不在数据库中,则插入它们(选中),或者如果它们存在,则删除它们(未选中)有没有办法不用写几个查询就可以做到?我知道插入/更新并不难,但是删除呢? 最佳答案 您可以随时删除,如果受影响的行为0,则插入。简单、简单且有效。 关于MySQLINSERTIFNOTEXISTelseDELETE行,我们在StackOverflow上找到一个类似的问题:

mysql - 如何使用 case 语句来确定要在哪个字段上进行左连接

我有一个查询需要能够在给定字段等于变量的条件下在正确位置左连接字段。类似于:CASEWHENchallenges.userID=$varLEFTJOINchallengesReadONchallenges.userID=challengesRead.userIDCASEWHENchallenges.opponentID=$varLEFTJOINchallengesReadONchallenges.opponentID=challengesRead.userID我认为我走在正确的轨道上,但我不确定如何将查询放在一起。谢谢 最佳答案 这

Mysql CASE语句多列

我有兴趣制作一个case语句,从两个不同的列中提取值,其中一个列涉及计算。我不确定如何进行这项工作,但我会向您展示目前的情况.(我有一列显示项目类型,例如特殊订单项目、停产项目和通常有库存的项目。第二列显示现有数量-销售订单上的数量以确定该项目是否有库存。)这是我的查询SELECTItemID,ItemType,(QuantityOnHand-QuantityonSalesOrders)ASInstockCASEWHENItemType='SP/OR'THEN'SpecialOrder'WHENInstock'0'THEN'InStock'AS"Stock"FROMpeachtree;

MySQL 按多个 case 语句排序

在这种情况下,我需要按由字段组合组成的“状态”对我的记录进行排序。这是一个示例,它应该如何返回按状态升序排序的结果:|SentReceivedApproved--------------------------------------------------record1|nullnullnullrecord2|2012-01-01nullnullrecord3|2012-01-012012-01-01nullrecord4|2012-01-012012-01-012012-01-01我将如何创建一个MySQL查询来根据它们的整体“状态”对这些记录进行排序?

MYSQL CASE 语句多个条件

请帮忙检查以下sql代码的错误:selectcasewhen(z.mso_group_id='3'andz.model_id='22887081')thencoalesce(level_2_id,996)level_2_idwhen(z.mso_group_id='4'andz.model_id='22911859')thencoalesce(level_2_id,997)level_2_idwhen(z.mso_group_id='5'andz.model_id='22915074')thencoalesce(level_2_id,998)level_2_idwhen(z.mso_g

MYSQL INSERT 或 UPDATE IF

在网上浏览了一段时间,似乎无法找到与我想要的类似的东西。我知道这与我编写查询的方式有关,但我们将不胜感激。我想做的事情的基础是:如果表不存在则插入一些项目如果项目确实存在则更新它以以下格式存在:名称、条形码、项目、数量、位置、价格和日期name-可以在多行中使用条形码-用于特定项目,但可用作多个位置item-与条形码相同,但包含名称数量-不言自明位置-这可以是不同的位置价格-附加到特定项目日期-上次购买该商品的时间棘手的是,一个“名称”可以在不同位置以不同价格包含多个项目(条形码和项目)。这个想法是,客户可以看到他们在设定的时间购买一件商品的价格,因此他们知道他们需要卖多少钱。但是,他