php - MySQL:喜欢和第一个字符

标签 php mysql select sql-like

我有两个 MySQL 问题。

$query = "  SELECT
                stationname
            FROM
                stations
            WHERE
                stationname >= '". mysql_real_escape_string($_GET['letter']) ."' 
            ORDER BY
                stationname

";

这是第一个查询。在 URL 中是一个包含字母字符的参数集 $_GET['letter']。我正在尝试选择 stationname$_GET['letter'] 开头的所有行。所以我在另一个 Stackoverflow 主题中找到了这个解决方案,但它似乎不起作用,我得到了我所有的行,而不仅仅是那一个。 编辑:它似乎检查了 stationname 中的所有字符,而不仅仅是首字母,我怎样才能得到它?

$query = "  SELECT
                stationname
            FROM
                stations
            WHERE
                stationname 
            LIKE
                    '". mysql_real_escape_string($_POST['search']) ."'
";

第二个也是最后一个问题。我想为我的网站创建一个搜索引擎,选择 stationname 包含 $_POST['search'] 的所有行。但是当我有 2 行时,例如,一行叫做 cheese,另一行叫做 cheese2,我搜索 cheese,只有 cheese 被选中,当我搜索 cheese2 时,只有 cheese2 会被选中。有什么方法可以同时选择 cheesecheese2 吗?

最佳答案

LIKE支持通配符。 %表示任意个字符(包括零),_表示任意一个字符`

stationname LIKE 'cheese%'

这将匹配 cheesecheese2

您也可以对第一期使用 %

stationname LIKE 'a%'

这将找到所有以 'a' 开头的单词。

关于php - MySQL:喜欢和第一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10092768/

相关文章:

php动态访问表单变量

php - 根据值对关联数组进行排序

sql - 选择$(美元符号)

javascript - 在其他函数中使用 var 在 CKeditor 中进行选择

php - 使用while循环从另一个表获取总行数时MYSQL慢查询

php - 使用 JOIN NULL 值匹配数据库中的列名

java - 外键约束的形成不正确 - java-mysql

php - 数据库赋予值(value)两次

java - 使用不同的参数多次运行相同的选择查询

php - 类中 undefined variable ......但我定义了它