首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SQLite / Javascript:如何知道A列中的所有值何时都相同

SQLite / Javascript:如何知道A列中的所有值何时都相同
EN

Stack Overflow用户
提问于 2012-04-17 09:22:37
回答 3查看 271关注 0票数 0

作为数千行的向下钻取文本搜索的一部分,其中许多行在列A中包含相同的数据,我想知道列A的sqlite结果集中的所有行是否都相同。例如:如果搜索项是'ai‘,并且列A= 'in pain’的结果集中的所有行都执行此函数。

那么,我该如何编程,无论是在sqlite中还是在结果集上使用javascript来询问:如果列A中的所有行都是相同的?

这可能是一些简单的东西(希望如此),但今天我就是不这么认为……

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-11 03:41:03

在db调用的成功函数中使用Javascript:

代码语言: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}
}
票数 0
EN

Stack Overflow用户

发布于 2012-04-17 09:31:56

代码语言:javascript
运行
复制
SELECT columnA, count(*) 
FROM  MyTable 
WHERE myField like '%AI%'  
GROUP BY columnA

可能不会是最快的,因为它在两边都做了%…这是一个SQLLite article

你可以使用正则表达式搜索AI on field,这样可能会更快

更新了,但我仍然不认为我完全理解样本数据会有帮助的问题。所以

痛苦中的哥伦纳在巢穴中痛苦

你想看看吗?

代码语言:javascript
运行
复制
in pain      2
in the lair  2

或者,您希望看到no records found (因为columnA中包含ai的所有值都不匹配?)

-也许这就是你要找的东西...

代码语言:javascript
运行
复制
select count(*) mcount from (
    SELECT columnA, count(*) 
    FROM  MyTable 
    WHERE columnA like '%AI%'  
    GROUP BY columnA) innerResult

如果mcount >1,则columnA有多个值与'%AI%‘匹配

票数 0
EN

Stack Overflow用户

发布于 2012-04-18 02:39:04

在SQL中执行此操作的成本很高:

代码语言:javascript
运行
复制
 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值的字典,当字典中有两个键时,您知道并不是所有的结果都是相同的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10183868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档