小编use*_*096的帖子

响应大小字体真棒图标

FontAwesome在响应式Bootstrap网站中使用图标,并希望根据屏幕分辨率显示不同大小的图标.

理想情况下,我想使用容器宽度的百分比显示字体真棒图标,即宽度的50%,因此它们可以向上和向下缩放.我知道我可能只是使用svg图标,但我想使用FontAwesome,因为我在我的网站的其他地方使用它.

我知道你可以使用类来指定大小,即fa-lg或fa-2x.最好的解决方案是使用Bootstrap类来隐藏和显示各种大小,具体取决于屏幕分辨率,还是可以使用百分比自动缩放图标?

css icons twitter-bootstrap font-awesome

16
推荐指数
2
解决办法
4万
查看次数

使用filesort,MYSQL性能变慢

我有一个简单的MySQL查询,但是当我有很多的记录(目前103,0000),性能实在是太慢了,它说,它是使用文件排序,林不知道这是为什么它是缓慢的.有没有人建议加快它?或者使用filesort停止它?

MYSQL查询:

SELECT adverts .*    
FROM adverts
WHERE (
price >='0'
)
AND (
adverts.status = 1
)
AND (
adverts.approved = 1
)
ORDER BY date_updated DESC 
LIMIT 19990 , 10
Run Code Online (Sandbox Code Playgroud)

解释结果:

id   select_type   table   type    possible_keys    key    key_len    ref    rows   Extra 
1    SIMPLE        adverts range   price            price  4          NULL   103854 Using where; Using filesort
Run Code Online (Sandbox Code Playgroud)

这是广告表和索引:

CREATE TABLE `adverts` (
  `advert_id` int(10) NOT NULL AUTO_INCREMENT,
  `user_id` int(10) NOT NULL,
  `type_id` tinyint(1) NOT NULL,
  `breed_id` int(10) NOT NULL,
  `advert_type` tinyint(1) …
Run Code Online (Sandbox Code Playgroud)

mysql performance database-performance filesort

13
推荐指数
1
解决办法
3万
查看次数

具有距离性能的MYSQL地理搜索

我在我的网站上有一个mysql select语句,当网站变得非常繁忙时会出现性能问题.下面的查询从具有超过100k记录的表中搜索广告,在给定的lat和lon的25英里内并按距离排序.用户选择的里程数可以不同.

问题是我认为它很慢,因为它对表中的所有记录进行计算,而不是在纬度和离子25英里范围内进行计算.是否可以修改此查询,以便where子句仅选择25英里内的广告?我已经阅读了有关边界框和空间索引的内容,但我不知道如何将它们应用于此查询,我是否需要添加一个where子句来选择距离纬度25英里半径的记录,我该怎么做?

SELECT 
    adverts.*, 
    round(sqrt((((adverts.latitude - '53.410778') * (adverts.latitude - '53.410778')) * 69.1 * 69.1) + ((adverts.longitude - '-2.97784') * (adverts.longitude - '-2.97784') * 53 * 53)), 1) as distance
FROM 
    adverts
WHERE 
    (adverts.type_id = '3')
HAVING 
    DISTANCE < 25
ORDER BY 
    distance ASC 
LIMIT 120,10
Run Code Online (Sandbox Code Playgroud)

编辑:更新以包含表模式,请注意表更复杂,查询也是如此,但我已删除了此问题不需要的内容.

CREATE TABLE `adverts` (
`advert_id` int(10) NOT NULL AUTO_INCREMENT,
`type_id` tinyint(1) NOT NULL,
`headline` varchar(50) NOT NULL,
`description` text NOT NULL,
`price` int(4) NOT NULL,
`postcode` varchar(7) NOT NULL,
`latitude` float NOT …
Run Code Online (Sandbox Code Playgroud)

mysql geospatial bounding-box

6
推荐指数
2
解决办法
1万
查看次数

MYSQL查询优化,多查询或一个大查询

我有一个查询,它有一些子查询(内部选择),我正在尝试找出哪个对性能更好,一个更大的查询或许多更小的查询,我发现很难在差异变化时尝试和计时一直在我的服务器上。

我使用下面的查询一次返回 10 个结果以显示在我的网站上,使用分页(偏移和限制)。

SELECT adverts.*, breed.breed, breed.type, sellers.profile_name, sellers.logo, users.user_level , 
round( sqrt( ( ( (adverts.latitude - '51.558430') * (adverts.latitude - '51.558430') ) * 69.1 * 69.1 ) + ( (adverts.longitude - '-0.0069345') * (adverts.longitude - '-0.0069345') * 53 * 53 ) ), 1 ) as distance, 
( SELECT advert_images.image_name FROM advert_images WHERE advert_images.advert_id = adverts.advert_id AND advert_images.main = 1 LIMIT 1) as imagename, 
( SELECT count(advert_images.advert_id) from advert_images WHERE advert_images.advert_id = adverts.advert_id ) AS num_photos 
FROM adverts 
LEFT …
Run Code Online (Sandbox Code Playgroud)

mysql optimization performance select query-optimization

5
推荐指数
1
解决办法
1820
查看次数

MYSQL group by和inner join

我有一个文章表,其中包含每天的文章视图数量.创建新记录以保存每篇文章的每个单独日期的计数.

以下查询获取所有时间前5个已查看文章ID的文章ID和总观看次数:

SELECT article_id, 
SUM(article_count) as cnt
FROM article_views
GROUP BY article_id
ORDER BY cnt DESC
LIMIT 5 
Run Code Online (Sandbox Code Playgroud)

我还有一个单独的文章表,其中包含所有文章字段.我想修改上面的查询以加入文章表并为每个文章ID获取两个字段.我试图在下面这样做,但计数回复不正确:

SELECT article_views.article_id, SUM( article_views.article_count ) AS cnt, articles.article_title, articles.artcile_url
FROM article_views
INNER JOIN articles ON articles.article_id = article_views.article_id
GROUP BY article_views.article_id
ORDER BY cnt DESC
LIMIT 5
Run Code Online (Sandbox Code Playgroud)

我不确定我做错了什么.我需要做一个子查询吗?

mysql inner-join subquery

4
推荐指数
1
解决办法
2万
查看次数