草庐IT

Description

全部标签

php - MySQL - 查找有或没有特殊字符的记录

我创建了一个在线商店,但发现搜索功能存在问题。如果用户输入要搜索的字符串,我会执行SELECT*FROMPRODUCTSWHEREDESCRIPTIONLIKE%....%这很好用,但问题存在于特殊字符中。想象一下,我有像“préparé”或“côteàl'os”这样的产品。当用户搜索“prepare”或“coteal'os”时,将找不到产品,但它们仍然存在。问题也存在于其他方面。如果用户搜索“dûroc”但我的产品在数据库中为“duroc”,他将找不到它。它也可以介于两者之间:用户搜索“preparé”或“côteal'os”。我怎样才能解决这个问题,或者至少让它变小?MySQL5.

mysql - 如何在 MySQL 中连接 varchar 字段上的表

Table_1type|descriptionErrorSomedescriptionSuccessAnotherdescriptionTable_2type|descriptionError1SomedescriptionError2AnotherdescriptionError3Yetanotherdescription我需要通过类型字段连接这两个表,这两个表中都是varchar数据类型。问题是,由于“错误”与“错误1”或“错误2”不同,当我比较两个字段时,它返回空结果。我试过:select*fromTable_1aleftjoinTable_2using(type)select*

php - 在 2 个或更多表上使用 SELECT

考虑以下数据库:浏览器表:id|name|description|stuffdifferentfromcarstable-------------------------------------------------------------------------------------1|Chrome|Somedescription2|Firefox|Someotherdescription3|Vivaldi|Evenmoredescription汽车表:id|name|description|stuffdifferentfrombrowserstable-------------

mysql查询根据时间戳识别和删除重复项

我正在尝试构建一个mysql查询以列出单个表中具有重复列b的所有列a。诀窍是我在行上有一个时间戳,所以我需要从根本上确定哪个是较旧的重复项,以便我可以删除它。任何帮助将不胜感激。 最佳答案 举个例子——这个查询返回重复的帖子,现在你只需要执行删除id|title|text_desc|created-------------------------------------------------------1|Thetitle|descriptionhere|2012-02-2110:58:582|Thetitle|descripti

mysql - 将文本追加和前置到列

我需要使用在名为description的列中附加和前置每个值所以我需要为每个值附加并附加所以下面test将变为test.谁能建议一个查询来处理这个问题? 最佳答案 UPDATEmytableSETdescription=CONCAT("",description,"") 关于mysql-将文本追加和前置到列,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/34790900/

php - 仅当值不为空时 MySQL 更新列

我有一个UPDATE查询并使用Ajax,我想知道是否有任何值是空的,我能否只更新数据库中非空的值。我不知道这是否可能有if语句或要检查的内容以跳过空值。我知道我可以添加另一个表单元素,但只是想知道是否还有其他解决方案。仅当数据是来自前端表单的POST时。如果数据不是POST,则不要更新此Title='.$title.',$id=$_POST['id'];$title="";$description=$_POST['Description'];$date=$_POST['Date'];$query='UPDATEuserSET`id`='.$id.',`Title`='.$title.'

mysql - MYSQL 中字段的 Substring()

我不明白为什么这没有成功:selectid,name,concat(substring(description,0,30),'...')asdesc_shortened,created_date,added_byfromproducts即使description字段中有数据。我没有在mySQL文档中看到任何字段示例。他们使用纯字符串而不是列名。concat(susbtring(description,0,30))只返回...就这样。 最佳答案 改用substring(description,1,30)。

sql - 一个只允许一个唯一输入的聚合函数

我经常发现自己在groupby子句中添加我确信是唯一的表达式。有时结果证明我错了-因为我的SQL中有错误或错误的假设,并且该表达式并不是真正唯一的。在很多情况下,我宁愿这会产生一个SQL错误,也不愿静静地扩展我的结果集,有时甚至是非常微妙地。我希望能够做这样的事情:selectproduct_id,uniquedescriptionfromproductgroupbyproduct_id但显然我自己无法实现-但可以在某些数据库上使用用户定义的聚合来实现几乎同样简洁的东西。只允许一个唯一输入值的特殊聚合是否普遍适用于所有版本的SQL?如果是这样,现在可以在大多数数据库上实现这样的事情吗?

PHP & MySql 检查表是否为空

我有点菜鸟-我很难过...我需要一些代码来搜索数据库表以找到与$id变量匹配的行。我需要获取该表“描述”中的一个字段。如果它为空,我需要显示一条消息,如果不是另一条的话。这是我的代码(我知道我需要添加mysqli转义字符串,只是从内存中快速完成):$query="SELECTdescriptionFROMpostsWHEREid=$id";$result=mysqli_query($dbc,$query);$row=mysqli_fetch_array($result,MYSQLI_ASSOC);if(!$row){echo"'Nodescription'";}else{echo''.

mysql - 每次我选择时,表中的行数都会不断变化,任何人都可以阐明吗?

我导入了一堆数据,预期的行数应该是41856。现在每次我使用phpMyAdmin进入表格时,我都会看到不同数量的行。没有任何连接会改变行数。我在这里添加了几个表格的屏幕截图,彼此相隔几秒钟。41610条记录,41759条记录,41647条记录... 最佳答案 一些存储引擎,例如MyISAM和ISAM,存储准确的计数。但是对于其他存储引擎,例如InnoDB,这个值是一个近似值,可能与实际值相差40%到50%。在这种情况下,请使用SELECTCOUNT(*)来获得准确的计数。” 关于mysq