草庐IT

php - Mysql - 查找重复值然后只返回最新的值然后如果它返回某个结果则忽略它

我有TablenameidcoidnametestpassfailtestdateVALUES11Chrismod1fail2015-05-2021Chrismod1pass2015-05-2532Patrickmod1fail2015-06-1043Jamesmod12015-12-2154Agnesmod1cancelled2015-07-0165Freyamod1pass2015-07-0175Freyamod2pass2015-07-05它列出了谁在什么时候做了什么测试,以及他们是否通过了。我需要能够返回未通过mod1测试的人的结果。如果我用SELECT*FROM`tablen

php - 如果数据存在于 mysql 数据库中,则使用它,否则使用占位符数据

我想做的是显示一些来自mysql数据库的数据,如果它是由用户设置的,如果它没有设置,那么我只想显示一些占位符或“虚拟”数据。例如,如果用户创建个人资料,他将默认获得一些随机或占位符图片作为个人资料图片,当他更改它时,我想从数据库中显示该图片。假设用户描述或“关于我”部分也是如此。这就是我目前所得到的prepare("SELECT*FROMuser_infoWHEREuserid=:userid");$getInfo->execute(array(':userid'=>$userID));$data=$getInfo->fetch(PDO::FETCH_ASSOC);$descripti

php - 检查电子邮件地址是否已存在,如果存在,则显示消息,如果不存在,则添加到表中

我希望对此有所了解。我有一个表格,其中包含名字、姓氏、城市、州和电子邮件地址。此表单使用jquery验证插件和表单插件。我想检查电子邮件是否已经存在...如果是,则吐出一条消息,告诉他们它们已经存在。这就是我的update.php脚本,如果用于将名称添加到mysql数据库,则格式如下:Thankyouforaddingyourinfo";mysql_close($con);?> 最佳答案 你应该createauniqueindex在电子邮件列上,那么如果您尝试插入同一封电子邮件两次,插入将失败。CREATEUNIQUEINDEXux

MYSQL如果不存在则插入数据

伙计们,出于某种原因,使用这段代码,我在插入数据库时​​得到了重复的记录$qry="INSERTIGNOREINTOreports(".implode(",",array_keys($reports)).")VALUES(".implode(",",array_values($reports)).");";if(!mysql_query(trim($qry),$link)){die('Error:'.mysql_error());}实际的说法是这样的INSERTIGNOREINTOreports(`inspection_number`,`report_date`,`customer`)

php - 如果不存在不同的结果,则插入到表中

我有一个像这样的“用户”SQL表结构(ID是随机生成的,不是自动递增的):IDnamedeletedlastActive3242Joe020-6-201223:142234Dave020-6-201223:132342Simon120-6-201223:029432Joe120-6-201222:58可以有多个已删除(deleted=1)的同名用户,但只有1个未删除的同名用户(所以加Simon没问题,但Dave不行)。如何仅在一个SQL查询中没有同名且deleted=0的记录时才插入?我需要这样的东西:INSERTINTOusers(ID,name)VALUES($id,$name)W

MySql查询如果没有匹配的记录,则获取两列的所有组合与NULL

我有一个表,里面有服务器宕机时间的记录。我在sqlfiddle创建了这个表的简化版本。请看这里sqlfiddle表格中的每条记录都是ReasonMonthDown_TimeAMay2AMay5BMay5CJuly15AJuly3BJune6AJune8CJune2如果没有匹配的记录,我需要编写一个查询来获取给定月份和原因与NULL的所有组合例如:如果由于原因A、B或D,我需要在5月、6月和7月获得系统的停机时间。我期望的是..ReasonMonthDOWNTIMEAMay7AJune8AJuly3BMay5BJune6BJulyNULLDMayNULLDJuneNULLDJulyNUL

java - 我需要为 mysql 表的每一行分配一个随机但唯一的 ID。如果行包含相同的值,则 ID 应该相同

我需要为Mysql表中的每一行分配一个随机但唯一的ID。如果行包含相同的值,则ID应该相同。即,如果第一行包含[hi,hello,bye],第二行包含[gg,hello,bye],第三行包含[hi,hello,bye],则第一行和第三行应生成相同的ID,第二行应生成相同的ID行应该生成不同的ID。提前致谢。 最佳答案 MD5哈希可以工作。下面是需要更新的快速/脏代码,但证明了这个概念。System.out.println("row1="+test1+":"+tst1.getHash(test1));System.out.printl

mysql - 如果不为空,则使用 "where"

目标仅当参数不为空时才使用“where”子句。问题我不知道语法。我有什么以下语法无效。CREATEDEFINER=`root`@`localhost`PROCEDURE`getProductsListForHome`(IN`inOffer`INT,IN`categoryId`INT)BEGINSELECT(MIN(`map`.`Product_Price`))as`minProductPrice`,(MAX(`map`.`Product_Price`))as`maxProductPrice`,`pr`.`Product_Name`as`productName`,`ca`.`Catego

MySQL:如果连接表包含至少一个匹配项,则返回行

(主表id等于jid。根据它加入。)第1项在连接表中有2行。/太好了。/但是第3项在连接表中没有行。问题:如何忽略那些没有连接行的项目?在一个查询中。我尝试了以下方法:SELECT*FROMmainTableASmainTLEFTJOINjoinTableASjoinTONmainT.id=joinT.jidWHERECOUNT(joinT.id)>0 最佳答案 将LEFTJOIN替换为INNERJOIN,并删除WHERE子句。 关于MySQL:如果连接表包含至少一个匹配项,则返回行,我

MySQL 如果存在则插入或做其他事情

我在将条件放入MySQL时遇到了一些困难。我一直在尝试创建一个查询,它将遍历所有标题为电子邮件的列,如果它存在,我想做这样的事情:如果存在电子邮件,我希望它采用正确的列的现有值并向其添加php变量$correct。但是,如果电子邮件不存在,那么我希望它添加一条新记录,其值$email到列email中,$correct到列correct中。任何帮助将不胜感激。这是我拥有的和不起作用的:IF(SELECT*FROMfacebookqsWHEREemail='$email'>0)UPDATEfacebookqsSETcorrect=correct+'$correct'whereemail='