首頁  >  文章  >  後端開發  >  循环 - php,while中使用mysql查询语句问题

循环 - php,while中使用mysql查询语句问题

WBOY
WBOY原創
2016-06-06 20:46:13881瀏覽

php的mysql查询语句可不可以这样用呢?

<code class="lang-php">$query = "SELECT name FROM bank WHERE area LIKE 'aaa'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)) {
    $http = $row['http'];
    $task_query = "SELECT * FROM task WHERE link LIKE'%$http%'";
    $task_result = mysql_query($task_query) or die(mysql_error());
    while($task = mysql_fetch_array($task_result));
            echo $task['high'].'<br>';
    }
</code>

回复内容:

php的mysql查询语句可不可以这样用呢?

<code class="lang-php">$query = "SELECT name FROM bank WHERE area LIKE 'aaa'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)) {
    $http = $row['http'];
    $task_query = "SELECT * FROM task WHERE link LIKE'%$http%'";
    $task_result = mysql_query($task_query) or die(mysql_error());
    while($task = mysql_fetch_array($task_result));
            echo $task['high'].'<br>';
    }
</code>

<code class="lang-sql">SELECT *
FROM task    
JOIN (SELECT http AS zhttp FROM bank WHERE area LIKE 'aaa') AS Z 
    ON task.link LIKE CONCAT('%', Z.zhttp, '%')
</code>

SELECT * FROM bank LEFT JOIN task ON task.link LIKE concat('%', bank.http, '%') WHERE bank.area = 'aaa'

我觉得你可能需要JOIN....

<code>select task.high from task left join bank on task.link like concat('%', bank.http. '%') where bank.area like 'aaa'
</code>

你在 $task_query = "SELECT * FROM task WHERE link='%$http%'"; 这里应该是希望得到模糊匹配的效果,怎么能用 = 呢?

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn