作为向成千上万行的向下搜索文本搜索的一部分,其中许多行包含列A中的相同数据,我想知道何时全部列A中sqlite结果集的行数相同。例如。如果搜索项是'ai',并且列A中的'in pain'中的结果集中的所有行都执行此功能。SQLite/Javascript:如何知道列A中的所有值何时都是相同的
那么我怎么编程,无论是在sqlite或使用JavaScript的结果集问:如果列A中的所有行是相同的?
这也可能是一些简单的(希望如此),但它只是今天不来找我......
谢谢!
作为向成千上万行的向下搜索文本搜索的一部分,其中许多行包含列A中的相同数据,我想知道何时全部列A中sqlite结果集的行数相同。例如。如果搜索项是'ai',并且列A中的'in pain'中的结果集中的所有行都执行此功能。SQLite/Javascript:如何知道列A中的所有值何时都是相同的
那么我怎么编程,无论是在sqlite或使用JavaScript的结果集问:如果列A中的所有行是相同的?
这也可能是一些简单的(希望如此),但它只是今天不来找我......
谢谢!
在db调用成功函数中使用Javascript
var detailsarr=[];
if (results.rows && results.rows.length) {
for (var i = 0; i < results.rows.length; i++) {
var details=results.rows.item(i).details;
if(detailsarr.toString().indexOf(details)===-1){detailsarr.push('"'+details+'"');}
}
detailsarr = '['+detailsarr+']';
var detailsdata=JSON.parse(detailsarr);
if(detailsdata[1]){THEN ALL ROWS ARE NOT IDENTICAL}
}
SELECT columnA, count(*)
FROM MyTable
WHERE myField like '%AI%'
GROUP BY columnA
可能不会是最快的,因为它的两侧做了......%以下是SQLLite article
你可以使用AI正则表达式搜索上的字段,它很可能会更快
更新,但我仍然不认为我完全理解这个问题的样本数据将有助于..所以
COLUMNA 在巢穴疼痛 疼痛在巢穴你想看到
in pain 2
in the lair 2
或你想看到 no records found
(因为所有在columnA包含AI不匹配的值?)
做---也许这就是你追求的...
select count(*) mcount from (
SELECT columnA, count(*)
FROM MyTable
WHERE columnA like '%AI%'
GROUP BY columnA) innerResult
如果mcount> 1,则columnA有超过1组的值匹配 '%AI%'
这将是昂贵的SQL做:
SELECT ColumnA, (SELECT COUNT(*) FROM YourTable WHERE ColumnA LIKE '%ai%' AND ColumnA <> outer.ColumnA) AS OtherCount
FROM YourTable AS outer WHERE ColumnA LIKE '%ai%';
在JavaScript中,你只遍历保持A列值的字典行,当你在字典里有两把钥匙,你知道,不是所有的结果都是一样的。
谢谢拉里,你可以显示javascript检查字典(dictionary = dictionary + newrow;)for> = 2键吗? – 2012-04-17 20:15:57
即选择符合%AI%的行,但它并没有告诉我,如果在A列中的所有行都是一样的“中痛苦“,也许在那里有一排'在巢穴里'。我需要知道列A中所有行包含相同的东西的时间。 – 2012-04-17 17:04:53
@ K'shin更新了回复,但是如果您想查看所有ai和他们的计数,或者没有找到记录或者需要什么指示? – xQbert 2012-04-17 17:22:09
我期望有多行包含“ai”,问题是所有这些行在列A中的值是否相同?对于这个问题,True或False就足够了,但要查看每个不同行的多少记录对于其他事情会很方便;-) – 2012-04-17 20:28:47