假设我的表上有一个多列索引。例如,索引位于列a、b和c上。 现在我想搜索如下内容: select * from my_table where a=1 order by id DESC。 我想知道我是否必须创建另一个索引,如,id,以使我的查询更快,或者前面提到的索引就足够了。我之所以问这个问题,是因为我不知道MySQL如何在多列索引上按id排序。
如何按列优先级对mysql结果进行排序?
举例说明。我有一个产品表,该表包含两列:产品名称(p.name)和产品描述(p.desc)。
用户应该能够输入关键字来查找数据库中的产品。
"p.name LIKE '%keyword%' OR p.desc LIKE '%keyword%'
我希望首先返回与p.name匹配的结果,然后返回p.desc。
我该如何去实现这个目标呢?
我想按两列对products表进行排序:prod_price和prod_name。
SELECT prod_id, prod_price, prod_name
FROM Products
ORDER BY prod_price, prod_name;
这里的排序是如何完成的?我认为这首先是由prod_price发生的,然后是prod_name。另外,上面的查询与这个查询有什么不同:
SELECT prod_id, prod_price, prod_name
FROM Products
ORDER BY prod_name;
我的products表如下:
CREATE TABLE Product
我在一个数据库中有两个表,一个名为Cottages,一个名为Hotels。在这两个表中,它们具有相同的命名字段。
我基本上有一个搜索栏,我想让它在两个表的两个字段中进行搜索。(这两个字段分别称为"Name“和"Location”
到目前为止,我已经
$sql = mysql_query("SELECT * FROM Cottages WHERE Name LIKE '%$term%' or Location LIKE '%$term%' LIMIT 0, 30");
但是这只搜索Cottages表,我如何让它同时搜索小屋和宾馆表呢
我从一个表中选择“标题”,并按“日期”排序。我从其他表中选择'title‘并按’date‘排序(两个表中具有相同名称的两个列)。然后我像这样将它们结合在一起。
(SELECT title FROM books WHERE id = :id ORDER BY date DESC) UNION ALL (SELECT title FROM movies WHERE id = :id ORDER BY date DESC);
我如何按日期将它们全部排序在一起?
我需要将两个表的第一列放到一行中,按这两个表排序columns.This是我能够编写的内容,但它不起作用。
select title from movie
union
select reviewer_name from reviewer
order by title,reviewer_name;
Mysql说reviewer_name是一个未知的列。
编辑
解决了!这都是我的错,mysql查询和php方法都运行得很好。我的坏榜样自欺欺人。事实上,他们应该是按喜爱的(真/假)排序产品,然后按日期排序。
我试图用两个“科尔”来对多维数组进行排序,但它对我来说是行不通的:O
我已经使用了所有可能的方法( mysql - order by,php - array_multisort() ),但是它仍然对我不起作用.
下面是我第一次尝试的方法:
// MySQL Query
SELECT * FROM `test` ORDER BY `name` ASC, `age` DESC;
// or
SELECT * FROM `test` ORDER B
首先,在被问及这个问题之前,我阅读了所有的帖子,但没有理解任何人,然后我试图从我的表中对所有列进行排序,如果列是number,则所有列都按升序排序,但如果列是varchar2,则只是排序一列,忽略其他列。
例如,这段代码
SELECT first_name,last_name FROM employees
ORDER BY first_name , last_name DESC ;
请解释给我听。谢谢。
考虑以下两个查询:
SELECT *, MAX(age) AS maxAge FROM someTable ORDER BY age ASC;
SELECT *, 'dummyC' AS dummyC FROM someTable ORDER BY age ASC;
前面的查询返回表的所有行和所有列,外加一个额外的虚拟列。后面的查询只返回一行,即主键最低的行。为什么会这样呢?我该如何解决呢?在Debian5.1中测试,在一些旧的但稳定的MySQL服务器上。