我不知道如何标题这个问题.如果你有更好的话,请纠正我.
我有两个表,用户和帖子.
用户:
id | username | password | ...
Run Code Online (Sandbox Code Playgroud)
帖子:
id | author_id | title | content | ...
Run Code Online (Sandbox Code Playgroud)
现在我想列出"最活跃"的用户 - 撰写帖子最多的用户.具体来说,我想要top 10结果.
SELECT u.username, COUNT(p.id) AS count
FROM Posts p, Users u
WHERE u.id=p.author_id
GROUP BY p.author_id
ORDER BY count DESC
LIMIT 10;
Run Code Online (Sandbox Code Playgroud)
我可以得到预期的结果.但是,如果某些用户具有相同数量的帖子,则排名可能不是" 公平的 ".
例如,我可能得到如下结果:
User 1 | 14
User 2 | 13
...
User 9 | 4
User 10 | 4
Run Code Online (Sandbox Code Playgroud)
实际上,有几个用户有4帖子.
所以,top 10可能不完全是10结果.如何获得更" 公平 "的结果,其中包含有4 …
我有一个 Python http 服务器,它侦听基于 JSON 的请求。收到请求后,从JSON输入中解析出key,并查询有这样key的Sqlite数据库。现在我想用结果 JSON 消息响应请求。我是 Python 的新手,我不知道如何。
我的代码结构如下:
import ...
key=...;//get key from request
con = lite.connect('test.db')
with con:
con.row_factory = lite.Row
cur = con.cursor()
cur.execute("SELECT * FROM mytable ");
while True:
row = cur.fetchone()
if row == None:
break
if key==row['key']:
# How can I add the record to the response?
Run Code Online (Sandbox Code Playgroud)
并且处理程序将像这样编写响应(在类中继承 BaseHTTPRequestHandler 并由线程启动)
self.send_response(200)
self.send_header('Content-Type', 'application/json')
self.end_headers()
self.wfile.write(??????) # What do I need to write here?
Run Code Online (Sandbox Code Playgroud) 我有两个表:Posts和Tags,它存储用户的发布文章和他们附加到文章的标签.表PostTags用于指示商品ID和标签ID的关系.结构如下:
帖子:
id | title | author_id | create_time | update_time | ... #(title, author_id, create_time) is unique
Run Code Online (Sandbox Code Playgroud)
标签:
id | tag_text | create_time #tag_text is unique and index
Run Code Online (Sandbox Code Playgroud)
PostTags:
id | post_id | tag_id #(post_id, tag_id) is unique
Run Code Online (Sandbox Code Playgroud)
我现在使用以下sql来获取带有相应标签的文章(使用group_concat).
SELECT p.id, p.title, t.tag AS Tags FROM Posts p
LEFT JOIN Tags t on t.id IN
(SELECT tag_id FROM PostTags WHERE post_id=s.id)
GROUP BY p.id ORDER BY p.update_time DESC LIMIT 0, 10
Run Code Online (Sandbox Code Playgroud)
但我觉得它很慢(对于2.5k行文章和600个标签,它需要> 3s).如何提高性能? …
我想获取摄像头视频流并在 Windows 上使用 RTSP 进行广播。
我可以播放相机视频
> ffplay -f dshow -i "HP HD Webcam"
Run Code Online (Sandbox Code Playgroud)
但如果我尝试启动流
> ffmpeg -f rtsp -i video="HP HD Webcam" rtsp://localhost:8888/live.sdp
Run Code Online (Sandbox Code Playgroud)
流不启动。控制台显示
ffmpeg version ...
configuration: ...
libavutil 55. 6.100 / 55. 6.100
libavcodec 57. 15.100 / 57. 15.100
libavformat 57. 14.100 / 57. 14.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 15.100 / 6. 15.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Run Code Online (Sandbox Code Playgroud)
如果我使用 ctrl+c …