拥有超过1 800万行的表:
SELECT * FROM tbl WHERE id > 10000000 LIMIT 30
花了0.0724秒。
SELECT * FROM tbl WHERE id < 10000000 ORDER BY id DESC LIMIT 30
花了0.0565秒。
这是在MySQL中的某一行之前选择一定数量的记录的最快方法吗?
这看起来很好,但是在选择这30行之前,MySQL不需要先按降序对这1千万行进行排序吗?
我问这是因为我对我提出的这个查询不太确定。这看起来确实很有效,而且足够快,但从语法语义来看,我不太确定。
MySQL是否有足够的智能来知道它
我在MySQL中有一个表,它有两个非常重要的字段STATUS和DATE。
在状态字段中,值可以是"wait“、”ok“、"2edit”或"no",因此为了获得这些值,我使用了"SELECT * FROM table ORDER BY FIELD(request_status,'wait','2edit','ok','no')“
到目前一切尚好。但我需要状态为"wait“的结果按日期顺序排列。有可能吗?
我希望我已经通过了这个想法!
谢谢。
我想在MySQL中插入一些短语
第一个字段是英语,第二个字段是韩语。每当我插入PHP脚本中的值时,问题就会出现在MYSQL中,如下所示。학교
但是,如果我插入来自PhpMyAdmin的相同的韩语值,它将会工作,所以问题来自于php脚本。我在网上发现我必须更改MySQL中的Collation?
有什么帮助吗?
<?
//*---------------------------------------------------------*\\
//* if POST
//*-------------------------------------
我有办法在ORDER BY FIELD中做MongoDB吗?
在Mysql中有如下内容:
SELECT id, name, priority
FROM mytable
ORDER BY FIELD(priority, "core", "board", "other")
这能在MongoDB中实现吗?
类似的查询在:中得到回答。
这使用聚合函数。我想要的是没有集合和有发现的东西。
我在一个数据库中有两个表,一个名为Cottages,一个名为Hotels。在这两个表中,它们具有相同的命名字段。
我基本上有一个搜索栏,我想让它在两个表的两个字段中进行搜索。(这两个字段分别称为"Name“和"Location”
到目前为止,我已经
$sql = mysql_query("SELECT * FROM Cottages WHERE Name LIKE '%$term%' or Location LIKE '%$term%' LIMIT 0, 30");
但是这只搜索Cottages表,我如何让它同时搜索小屋和宾馆表呢
如果我运行以下查询:
select * from mysql.user order by abcdef;
MySQL引发以下错误:
错误1054 (42S22):“order子句”中未知列'abcdef‘
如果我运行以下类似的查询:
select * from mysql.user order by "abcdef";
MySQL现在运行查询并忽略order子句(因为mysql.user表缺少一个名为‘abcdef’的列)。
这是MySQL中的一个bug吗?为什么当这个短语是用引号的时候,你想让订单默默地失败呢?在不存在的列上运行order时,错误消息不合适吗?
$query = mysql_query('SELECT * from rbf_edades_news order by month DESC '.$limit.'');
月和日在不同的字段中,
有什么想法,这是可能的吗?
$query = mysql_query('SELECT * from rbf_edades_news order by month and DESC '.$limit.'');
谢谢!
我在MySQL数据库表中有一个文本字段,其中的文本值混合了英语和非英语条目(考虑到以字母开头的字符串被视为英语)。
我想对这些值进行排序,并在HTML下拉框中使用它。数据示例:
Banana
Apple
Juice
西瓜
水蜜桃
ピタヤピタヤ
ピーチ
我想把它分类如下:
Apple
Banana
Juice
西瓜
ピーチ
大水蜜桃
ピタヤピタヤ
英语条目首先按字母顺序上升,然后是非英语条目,然后是字符串长度。我想我必须用PHP来解决这个问题,对吗?
PHP伪码
$result_set = ( get result set from database with MySQL query )
//
嗨,极客们
我在PHP和Mysql中工作。我有一个来自数据库的数组,在其中我获得了表单的字段名称的值,例如,Name,Company name等。
我希望这些字段以我想要的顺序显示,同样:
Name:
Company Name:
Date of Birth:
Address:
这些值同样在无序格式的数组中可用:
array(
Company Name,
Address,
Date Of Birth,
Name
)
现在我的问题是,如何操作这个数组来获得上面在PHP中显示的字段所需的顺序?
我想要一个查询,对一个字段进行全文搜索,然后对另一个字段进行排序(想象按发布日期搜索一些文本文档和顺序)。该表大约有17M行,它们在日期上大致均匀分布。这将在webapp请求/响应周期中使用,因此查询最多必须在200 is内完成。
按示意图:
SELECT * FROM table WHERE MATCH(text) AGAINST('query') ORDER BY date=my_date DESC LIMIT 10;
一种可能是在文本字段上有一个全文索引,在发布日期有一个btree:
ALTER TABLE table ADD FULLTEXT index_name(te
在许多评论中,通常有一个按日期、有用性等进行排序的功能。本质上,这些工作是通过查询新的MySQL行来完成的,对吗?
例如:
$sql = "SELECT * FROM TABLE ORDER BY TimeAdded"
$sql = "SELECT * FROM TABLE ORDER BY Helpfulness"
还是会有更好的方法去做呢?
第二,为评论制作网页。是否就像在MySQL查询中使用循环和限制来显示每页10个结果一样简单?
编辑:对于一个巨大的评论站点,让MySQL来处理所有的排序是理想的吗?
我想用Zend Db在自定义列表上对我的数据库中的一些行进行排序。
它们有字段page_type,可以是0、1、2或3,我希望它们的顺序是:1、3、2、0
我发现使用是可能的:
SELECT id
FROM table
WHERE id IN (15,21,4,8)
ORDER BY id = 15 DESC, id = 21 DESC, id = 4 DESC, id = 8 DESC
Zend Db也可以吗?或者我应该在这里只使用普通的MySQL?
这是我现在的代码:
$select = $this->select()
->order(array(
我使用MySQL查询从两个表中获取信息,然后按一个字段对它们进行排序。最后一行的某些内容不起作用,加载内容的AJAX函数返回一个错误。
$list = mysql_query("SELECT id,
user_email,
meta_lastname.meta_value lastname,
meta_firstname.meta_value firstname
FROM wp_users
LEFT JOIN wp_usermeta meta_lastname
ON me