php - 如何在选择查询中使用多个表?(没有内部联接)

标签 php mysql select search

我想在一个选择查询中获取两个表而不使用内部联接,我可以这样做吗?

if(isset($_POST['search']))    
{   $name=$_POST['searchtxt'];    

$result = mysql_query("SELECT * FROM `product_tb_men` WHERE `name` LIKE '%".$name."%'");    

}    

这不是完整的代码,第二个表名称是product_tb_women..

最佳答案

您可以这样使用UNION

if(isset($_POST['search']))    
{
    $name=$_POST['searchtxt'];
    $query = "SELECT * FROM `product_tb_men` WHERE `name` LIKE '%".$name."%'"
                ." UNION "
                ."SELECT * FROM `product_tb_women` WHERE `name` LIKE '%".$name."%'";

    $result = mysql_query($query);
}  

您确实需要考虑 mysql_* 函数的使用并清理 name 的值以避免 SQL 注入(inject)

关于php - 如何在选择查询中使用多个表?(没有内部联接),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33062857/

相关文章:

java - Kotlin 。 Java 和 PHP 与 MySQL 的性能

javascript - Joomla 3 无法点击子菜单

PHP:重定向()?

php - 推进 "AND NOT"查询

mysql - mysql创建临时表报错

PHP:获取具有特定索引的两个字符之间的字符串

mysql - 保存在 MySQL 数据库中的 JSON 或 XML 或序列化数组

c# - 分组相同类型的集合 C#

mysql - 为什么这个查询不起作用?

MYSQL 非常奇怪的选择行为