MySQL联合查询是利用UNION操作符把多个SELECT语句的结果合并在一起,返回一个大的结果集。应用层可以通过调用MySQL的API实现联合查询,具体步骤如下:
// 连接数据库
$conn = mysqli_connect("localhost", "username", "password", "database_name");
if (!$conn) {
die("连接失败: " . mysqli_connect_error());
}
// 执行联合查询语句
$sql = "SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2";
$result = mysqli_query($conn, $sql);
// 输出结果
if (mysqli_num_rows($result) >0) {
while($row = mysqli_fetch_assoc($result)) {
echo "column1: " . $row["column1"]. " - column2: " . $row["column2"]. "
";
}
}
else {
echo "0 结果";
}
// 关闭连接
mysqli_close($conn);
在上述代码中,首先是连接到MySQL数据库。然后,编写联合查询语句,并使用mysqli_query()函数执行它。最后,通过mysqli_fetch_assoc()函数获取结果集中的行,并输出结果。
需要注意的是,联合查询的前提是多个SELECT语句返回的列数必须相同,并且相应的列的数据类型也要相同。如果数据类型不同,MySQL会尝试进行隐式类型转换。