Sql 如何正确使用RAND()的语法
当它尝试选择4个随机行时,不断出现错误。我不确定我这样做是否正确。还请注意,我使用的是access db。另请注意。。ManaTypes是字符串数组Sql 如何正确使用RAND()的语法,sql,delphi,ms-access,delphi-xe2,Sql,Delphi,Ms Access,Delphi Xe2,当它尝试选择4个随机行时,不断出现错误。我不确定我这样做是否正确。还请注意,我使用的是access db。另请注意。。ManaTypes是字符串数组 with adoquery1 do begin close; sql.Clear; sql.Add('SELECT * '); sql.Add('FROM Cards '); sql.Add('WHERE Color='+ManaTypes[i]+' ORDER BY RAND() Limit 4'); open; end;
with adoquery1 do
begin
close;
sql.Clear;
sql.Add('SELECT * ');
sql.Add('FROM Cards ');
sql.Add('WHERE Color='+ManaTypes[i]+' ORDER BY RAND() Limit 4');
open;
end;
获取查询表达式“Color=”中的错误“snytax error(缺少运算符)”Try
sql.Add(
'SELECT Top 4 *
FROM
(
SELECT *, Rnd(ID) AS RandomValue
FROM Cards
WHERE Color = "' + ManaTypes[i] + '"
)
ORDER BY RandomValue'
另外,请尝试
按Rnd下单
当然可以:D也按Rnd下单限制4也不起作用相同的错误您是否在卡片
后添加空格?嗨,格伦,我添加了一个正确的答案,即删除此问题并向该副本添加一个赏金。我会在那里设置赏金,但我没有时间测试答案,因为我既没有时间也没有访问权限(更准确地说,我甚至不想访问)。这起作用了,或者至少运行了..但是必须交换'and',而且每次似乎都给出相同的4个随机数?仍然有效,但仍然是相同的4个随机数。。random不象我认为的那样工作吗?