从sql数据库中检索的值中删除不需要的空格

时间:2014-02-16 08:50:43

标签: php sql

我有一个简单的搜索表单,要求用户提供一个名称和一些其他信息,它将在我拥有的sql数据库中查找它的条目。我在比较名称字段时遇到问题,因为sql中保存的名称在名称前后有一些空格,因此比较失败。如何从“RETRIEVED”名称中删除空格?这是我用来保存数组中名称的代码段。 我想从php代码中删除空格,而不是直接从数据库中删除。

$query = 'SELECT ID, FirstName, LastName from student WHERE';
$query_parts = array();         

if($_GET['First_Name'] != "")
    array_push($query_parts, ' FirstName="'.$_GET['First_Name'].'"');


if($_GET['Gender'] != "")
    array_push($query_parts, ' Gender="'.$_GET['Gender'].'"');

2 个答案:

答案 0 :(得分:0)

数据库提供trim函数,用于从查询的值中删除前导和尾随空格。如果您在没有修剪的情况下查询过,则可以使用所用语言的string.trim函数从数据库中获取结果后修剪它们。

如果要修剪sql查询,则必须编写where子句以使用数据库提供的trim函数来动态修剪列。但是,请注意,由于飞行修剪和可能的全表扫描,它可能会更慢。

答案 1 :(得分:0)

使用sql名称时使用trim函数。例如:

where TRIM(sqlname) like "$phpVar";