Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql r价格范围,而不是具有技巧的 SELECT p.id, MAX(p.name), MIN(v.price_per_day) AS price_low, MAX(v.price_per_day) AS price_high FROM properties p JOIN properties_prices v ON p.id = v.property_id AND v.price_per_day BETWEEN 10 AND 100 AND v.date_begin < '2010-12-31' AND v.date_end > '2010-05-01' GROUP BY p.id ORDER BY ... LIMIT 10;_Mysql_Date Range - Fatal编程技术网

Mysql r价格范围,而不是具有技巧的 SELECT p.id, MAX(p.name), MIN(v.price_per_day) AS price_low, MAX(v.price_per_day) AS price_high FROM properties p JOIN properties_prices v ON p.id = v.property_id AND v.price_per_day BETWEEN 10 AND 100 AND v.date_begin < '2010-12-31' AND v.date_end > '2010-05-01' GROUP BY p.id ORDER BY ... LIMIT 10;

Mysql r价格范围,而不是具有技巧的 SELECT p.id, MAX(p.name), MIN(v.price_per_day) AS price_low, MAX(v.price_per_day) AS price_high FROM properties p JOIN properties_prices v ON p.id = v.property_id AND v.price_per_day BETWEEN 10 AND 100 AND v.date_begin < '2010-12-31' AND v.date_end > '2010-05-01' GROUP BY p.id ORDER BY ... LIMIT 10;,mysql,date-range,Mysql,Date Range,这允许您的查询以尽可能最佳的方式运行,因为它可以直接从索引中读取值。它根本不需要从表中读取数据行 +----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+ | id | select_type | table | type | possible_keys | key |

这允许您的查询以尽可能最佳的方式运行,因为它可以直接从索引中读取值。它根本不需要从表中读取数据行

+----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+
| id | select_type | table | type  | possible_keys   | key             | key_len | ref       | rows | Extra                    |
+----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+
|  1 | SIMPLE      | p     | index | PRIMARY         | PRIMARY         | 4       | NULL      |    1 |                          |
|  1 | SIMPLE      | v     | ref   | prices_covering | prices_covering | 4       | test.p.id |    6 | Using where; Using index |
+----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+

我们快到了。。你的问题很好。我在主帖上回答了你的问题。我们马上就到了。。你的问题很好。我在主post.date_begin=“2010-05-01”s/b”和“感谢您发现这一点”上回答了您的问题。我是从我编写的sql server版本中转述的-我一定是转述错误了!date_begin=“2010-05-01”s/b”和“感谢您发现这一点。我是从我编写的sql server版本中转述的-我一定是转述错误了!
SELECT 
   prperty_id, MIN(price_per_day), MAX(price_per_day)
FROM 
   properties_prices 
WHERE 
   date_begin <= "2010-12-31" AND date_end >= "2010-05-01"
GROUP BY 
   property_id
HAVING MIN(IF( (price_per_day BETWEEN 10 AND 100), 1, 0))=1
ORDER BY ...
LIMIT 10
SELECT p.id, MAX(p.name), 
  MIN(v.price_per_day) AS price_low,
  MAX(v.price_per_day) AS price_high
FROM properties p
JOIN properties_prices v ON p.id = v.property_id
  AND v.price_per_day BETWEEN 10 AND 100  
  AND v.date_begin < '2010-12-31' AND v.date_end > '2010-05-01'
GROUP BY p.id
ORDER BY ...
LIMIT 10;
CREATE INDEX prices_covering ON properties_prices
  (property_id, price_per_day, date_begin, date_end);
+----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+
| id | select_type | table | type  | possible_keys   | key             | key_len | ref       | rows | Extra                    |
+----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+
|  1 | SIMPLE      | p     | index | PRIMARY         | PRIMARY         | 4       | NULL      |    1 |                          |
|  1 | SIMPLE      | v     | ref   | prices_covering | prices_covering | 4       | test.p.id |    6 | Using where; Using index |
+----+-------------+-------+-------+-----------------+-----------------+---------+-----------+------+--------------------------+