php - 在查询中使用 LIKE 子句

标签 php mysql dynamic sql-like

我正在尝试编写一个动态查询,该查询从多个下拉列表中获取信息。 下拉列表中有一个名为 ANY 的选项,我为其指定了值 %,这样当选择它时,它就不会影响查询选择。

这是我的查询:

$query_pag_data = "
SELECT *
FROM forecast
WHERE QuoteCode IN
    (SELECT QuoteCode
     FROM `StockData`
     WHERE AssetType LIKE '$sec'
       AND region LIKE '$indust'
       AND exchange LIKE '$exchange'
       AND Country LIKE '$cntry')
  AND RANKING LIKE '$sig_m_t'
  AND RANKINGw '$sig_l_t'
  AND NewSigD LIKE '$new_m'
  AND NewSigW LIKE '$new_l'
ORDER BY SCORE DESC LIMIT $start,
                          $per_page
";

我想知道如果我在变量中传递 % 是否有效?

最佳答案

在这些情况下我所做的是:

$query_pag_data = "
SELECT *
FROM forecast
WHERE QuoteCode IN
(SELECT QuoteCode
FROM `StockData`
WHERE AssetType LIKE '%$sec%'
AND region LIKE '%$indust%'
AND exchange LIKE '%$exchange%'
AND Country LIKE '%$cntry%'
AND RANKING LIKE '%$sig_m_t%'
AND RANKINGw '%$sig_l_t%'
AND NewSigD LIKE '%$new_m%'
AND NewSigW LIKE '%$new_l%'
ORDER BY SCORE DESC LIMIT $start,$per_page";

关于php - 在查询中使用 LIKE 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20703528/

相关文章:

php - mysql查询从两个表中获取电影及其歌曲

PHP循环遍历数组以从数据库中选择

mysql - 文件大小:CSV 与 MySQL

excel - 带高亮显示的动态搜索 - Excel VBA

php - 使用数据库事务防止竞争条件 (Laravel)

php - @mysql_connect 和 mysql_connect

javascript - AJAX:如果没有更多结果,如何清除间隔

mysql - 从数据透视表返回单行

css - 如何做一个动态的 HTML-pagewidth,在调整大小时跳进 3 个设备步骤 - 没有 js?

C 双重释放错误