Php 我的sql数据库中的匹配条件
因此,我有一个公司表,其中有客户必须满足的最低标准 例如:Php 我的sql数据库中的匹配条件,php,sql,database,Php,Sql,Database,因此,我有一个公司表,其中有客户必须满足的最低标准 例如: 公司1的最低电费为35英镑 第二公司的最低电费为35英镑 3号公司的最低电费为45英镑 一位客户将填写该表格,并说那里的电费是53英镑,这将从数据库中删除所有3家公司。 如果客户输入40英镑,将从数据库中提取公司1和公司2。 我有一个SQL查询,我认为它可以工作,但由于明显的原因没有工作: SELECT * FROM `companies` WHERE `electric_spend` <= 35 SELECT*FROM`c
- 公司1的最低电费为35英镑
- 第二公司的最低电费为35英镑
- 3号公司的最低电费为45英镑
一位客户将填写该表格,并说那里的电费是53英镑,这将从数据库中删除所有3家公司。
如果客户输入40英镑,将从数据库中提取公司1和公司2。
我有一个SQL查询,我认为它可以工作,但由于明显的原因没有工作:
SELECT * FROM `companies` WHERE `electric_spend` <= 35
SELECT*FROM`companys`WHERE`electric\u-spend`我相信您会希望在SQL中使用WHERE x a
语法,我相信您也可以在
命令中使用SQL的。这里有一些资源可以提供帮助
旁注:尽可能使用SQL语句而不是web服务器语言(PHP/.NET/etc)来执行逻辑。SQL在数据操作方面的性能要高得多。如果我读对了,那么答案是您测试的值不正确
您需要使用客户的实际支出,而不是35的固定值
因此,您的第一个客户将生成查询
选择*FROMcompanies
WHEREelectric\u-spend
最基本的答案是使用带有变量的查询:
<?php
$customerSpend = 53;
$query = "SELECT * FROM `companies` WHERE `electric_spend` <= '$customerSpend'";
是的,你是对的,应该是这样的
<?php
$customerSpend = 53;
$query = 'SELECT * FROM `companies` WHERE `electric_spend` <= :customerSpend';
$sth = $dbh->prepare($query, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$sth->execute(array(':customerSpend' => $customerSpend));