繁体   English   中英

SQL我的查询出了什么问题

[英]SQL What's wrong with my query

SELECT 'name'  FROM 'players' WHERE 'id' IN
    (SELECT 'player_id' from 'players_online' WHERE 'frags'=
    (SELECT MAX(frags) FROM 'players_online')) 
AND 'name' is not null LIMIT 1;

有两个表,第二个表中有一个重要的最大值,称为frags列,我想从表1中提取一个名称,其中id和player_id列具有相同的值。 当我没有单引号的情况下检查它的工作原理,但我需要保持引号的原因lua脚本短语返回一个布尔表达式而不是字符串

Lua代码:

BestPAl=db.storeQuery("SELECT name FROM players WHERE id IN(SELECT player_id from players_online WHERE frags=(SELECT MAX(frags) FROM players_online)) AND name is not null LIMIT 1;")
BestPA=result.getDataString(BestPAl)'code'

您无需在表名和字段名中加上引号。 像这样尝试

SELECT name FROM players WHERE id IN(SELECT player_id from players_online WHERE frags=(SELECT MAX(frags) FROM players_online)) AND name is not null LIMIT 1;

好的,此问题的结果可能看起来像以前的解决方案:

local BestPAl=db.storeQuery("SELECT `player_id` FROM `players_online` ORDER BY `frags` DESC LIMIT 1")
local BestPA=result.getDataInt(BestPAl, "player_id")
result.free(BestPAl)
local BestPAm=db.storeQuery("SELECT `name` FROM `players` WHERE `id` = " .. BestPA )

我将查询一分为二,每个查询都写入变量。 Atention! lua中的此代码指的是在支持的程序中实现的自身功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM