SQLite / Javascript:如何知道A列中的所有值何时相同
SQLite / Javascript: How to know when all values in column A are identical
作为对数千行进行向下钻取文本搜索的一部分,其中许多行在 A 列中包含相同的数据,我想知道何时 A 列的 sqlite 结果集中的所有行都相同。如果搜索词是"ai",并且 A 列 = "痛苦"的结果集中的所有行都执行此功能。
那么我如何以编程方式,无论是在 sqlite 中还是在结果集上使用 javascript 询问:如果 A 列中的所有行都相同?
这可能是一些简单的事情(希望如此),但它今天不会来找我......
谢谢!
SELECT columnA, count(*)
FROM MyTable
WHERE myField like '%AI%'
GROUP BY columnA
可能不会是最快的,因为它在双方都做了一个百分比......这是一篇 SQLLite 文章
您可以在字段中对AI使用正则表达式搜索,这可能会更快
已更新,但我仍然认为我不能完全理解问题样本数据会有所帮助..
所以列纳在痛苦中在痛苦中在巢穴中在巢穴中
你想看吗
in pain 2
in the lair 2
还是你想看 no records found
(因为 A 列中包含 ai 的所有值都不匹配?
---也许这就是你所追求的...
select count(*) mcount from (
SELECT columnA, count(*)
FROM MyTable
WHERE columnA like '%AI%'
GROUP BY columnA) innerResult
如果 mcount> 1,则列 A 具有超过 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列值字典的行,当你在字典中有两个键时,你知道并非所有结果都是相同的。
在 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}
}
相关文章:
- 何时在 JavaScript 中使用导出默认值和导出常量
- 检测数组的所有函数何时返回:javascript
- 何时在javascript中使用css元素/类选择器
- 如何决定何时在javascript中使用闭包
- 如何检测何时使用javascript动态注入了多个样式表
- 确定何时完成 JavaScript Dropbox 数据存储 API 的插入
- 需要澄清何时在 JavaScript 中使用引号以及何时不使用引号
- DOM 何时在 Javascript 例程中重新绘制
- 何时在 javascript 中使用闭包
- 如何检测用户何时使用javascript查看网页
- 何时使用javascript而不是创建aspx页面
- 我应该何时在JavaScript/TypeScript中使用“导出默认值”
- 如何处理何时使用 Javascript 单击弹出的网页上的 x 按钮
- 何时在javascript中使用范围解析
- 何时在javascript中嵌套函数
- 如何以及何时调用Javascript全局匿名函数
- 变量何时成为JavaScript函数环境的一部分?
- 自动提示何时使用JavaScript在输入字段中写入字符
- 如何决定何时在javascript中使用数组或对象
- 何时在 JavaScript 中使用 null 或未定义