php - Mysql 搜索查询

标签 php mysql

我正在开发一个汽车租赁网站。我有两个表 test_tbl_carstest_reservations

我正在使用搜索查询(抄袭自 Jon Kloske "How do I approach this PHP/MYSQL query?" ):

$sql = mysql_query("SELECT 
    test_tbl_cars.*, 
    SUM(rental_start_date <= '$ddate' AND rental_end_date >= '$adate') AS ExistingReservations 
  FROM test_tbl_cars 
  LEFT JOIN test_reservations USING (car_id) 
  GROUP BY car_id 
  HAVING ExistingReservations = 0");

这为我提供了出色的搜索结果,但 test_tbl_cars 表包含许多汽车,在任何给定搜索中,这些汽车都会返回多个可用的相同汽车型号。

如何过滤查询返回,以便获得每个可用模型之一?

最佳答案

使用 Distict 子句

$sql = mysql_query("SELECT 
DISTINCT test_tbl_cars.model, test_tbl_cars.*, 
SUM(rental_start_date <= '$ddate' AND rental_end_date >= '$adate') AS ExistingReservations 

来自 test_tbl_cars 左连接 test_reservations 使用 (car_id) 按 car_id 分组 已有现有预订 = 0");

关于php - Mysql 搜索查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17761787/

相关文章:

php - 根据链接的访问方式控制 API 响应

php - 表单数据已正确发布到电子邮件,但错误发布到数据库

java - @NamedQuery 将表/列名称更改为大写导致异常

php - CURL 不保存 Cookie (PHP)

php - 在表单字段中添加电话并将值发布到数据库

php - 将多维数组与匹配值合并

php - 为什么将 session 数据存储在应用程序数据库中?

php - mySQL INSERT INTO 没有错误

mysql - 如何获取下表中每位顾客的预订数量

mysql - 更改 SQL 数据库中的 Magento 产品代码?