C# cultureinfo的名称空间称为全球化?非常感谢您的帮助,我从内存中删除了一个参数,代码已编辑。是的,系统。全球化是正确的名称空间。CONVERT在SQLite中不可用。请尝试替换CONVERT到CASTCAST(替换(TotalTrans,,,,,'
C# cultureinfo的名称空间称为全球化?非常感谢您的帮助,我从内存中删除了一个参数,代码已编辑。是的,系统。全球化是正确的名称空间。CONVERT在SQLite中不可用。请尝试替换CONVERT到CASTCAST(替换(TotalTrans,,,,,',c#,sqlite,C#,Sqlite,cultureinfo的名称空间称为全球化?非常感谢您的帮助,我从内存中删除了一个参数,代码已编辑。是的,系统。全球化是正确的名称空间。CONVERT在SQLite中不可用。请尝试替换CONVERT到CASTCAST(替换(TotalTrans,,,,,'')为float)我将尝试您的方法。我尝试了第一个查询,但如果我执行totalTrans>3,则得到的所有值都小于1000。。非常奇怪的NewUser,您是否使用SQLite的命令行工具测试过您的查询?在Windows/sqlite外壳的预编译
cultureinfo的名称空间称为全球化?非常感谢您的帮助,我从内存中删除了一个参数,代码已编辑。是的,系统。全球化是正确的名称空间。
CONVERT
在SQLite中不可用。请尝试替换CONVERT
到CAST
CAST(替换(TotalTrans,,,,,'')为float)
我将尝试您的方法。我尝试了第一个查询,但如果我执行totalTrans>3,则得到的所有值都小于1000。。非常奇怪的NewUser,您是否使用SQLite的命令行工具测试过您的查询?在Windows/sqlite外壳的预编译二进制文件下查看是否有我们可以共享屏幕的服务?我是新来的,不知道如何运行这个新用户,这不是我可以在办公室使用的,但是这个工具非常简单。下载、解压缩并复制到C:\Windows\system32。打开命令提示符,cd
到存储数据库的目录,输入sqlite3 datafile
,其中datafile
是数据库的文件名。从那里可以运行查询。喜欢这个工具,我每天都用。
string sql14 = "select YYMM, TotalTrans from t2 where CAST(TotalTrans as int) < 500000 and CAST(TotalTrans as int) > 1000";
string sql14 = "select YYMM, TotalTrans from t2 where CAST(TotalTrans as int) < 500000 and CAST(TotalTrans as int) > 1000";
SQLiteCommand cmd5 = new SQLiteCommand(sql14, sqlite_conn);
SQLiteDataReader rdr5 = cmd5.ExecuteReader();
while (rdr5.Read())
{
int TotalTranst22;
DateTime yyyymmt22;
if (DateTime.TryParse(rdr5["YYMM"].ToString(), out yyyymmt22) && int.TryParse(rdr5["TotalTrans"].ToString(), out TotalTranst22))
{
// Populating the lists
YYMMt22.Add(yyyymmt22);
TotalTransIrregularitiest22.Add(TotalTranst22);
}
}
SELECT CAST(TotalTrans as int) FROM t2`
// Total Trans tolerance <1000
string sql13 = "select YYMM, TotalTrans from t2 where cast(TotalTrans as int) < 1000";
string sql14 = "select YYMM, TotalTrans from t2 where CAST(REPLACE(TotalTrans, ',', '') as int) < 500000 and CAST(REPLACE(TotalTrans, ',', '') as int) > 1000";
SQLiteCommand cmd5 = new SQLiteCommand(sql14, sqlite_conn);
SQLiteDataReader rdr5 = cmd5.ExecuteReader();
while (rdr5.Read())
{
int TotalTranst22;
DateTime yyyymmt22;
if (DateTime.TryParse(rdr5["YYMM"].ToString(), out yyyymmt22) && int.TryParse(rdr5["TotalTrans"].ToString(), out TotalTranst22))
{
YYMMt22.Add(yyyymmt22);
TotalTransIrregularitiest22.Add(TotalTranst22);
}
}
string sql14 = "select YYMM, TotalTrans from t2 where CAST(REPLACE(TotalTrans, ',', '') as int) < 500000 and CAST(REPLACE(TotalTrans, ',', '') as int) > 1000"
SQLiteCommand cmd5 = new SQLiteCommand(sql14, sqlite_conn);
SQLiteDataReader rdr5 = cmd5.ExecuteReader();
while (rdr5.Read())
{
int TotalTranst22;
DateTime yyyymmt22;
if (DateTime.TryParse(rdr5["YYMM"].ToString(), out yyyymmt22) && int.TryParse(rdr5["TotalTrans"].ToString(), NumberStyles.Number, CultureInfo.CurrentCulture, out TotalTranst22))
{
YYMMt22.Add(yyyymmt22);
TotalTransIrregularitiest22.Add(TotalTranst22);
}
}
select
convert(float, replace(TotalTrans,',',''))
from
(
select '336,604' as TotalTrans
union all
select '329,548' as TotalTrans
union all
select '2,734,311' as TotalTrans
union all
select '2.15' as TotalTrans -- [done] with convert to float
union all
select '4' as TotalTrans
union all
select '78' as TotalTrans
union all
select '' as TotalTrans -- [done] automatic replace to 0
union all
select null as TotalTrans -- [done] no record
) a
where cast(replace(TotalTrans,',','') as float) < 1000
--------
|2.15 |
--------
|4 |
--------
|78 |
--------
|0 |
--------
SELECT YYMM, TotalTrans FROM t2 WHERE length(TotalTrans) > 3;
SELECT YYMM, TotalTrans FROM t2 WHERE CAST(replace(TotalTrans,',','') BETWEEN 1000 AND 500000;
UPDATE t2 SET TotalTrans = CAST(replace(TotalTrans,',','') AS INTEGER);
if (DateTime.TryParse(rdr5["YYMM"].ToString(), out yyyymmt22) && int.TryParse(rdr5["TotalTrans"].ToString(), out TotalTranst22))
select YYMM, REPLACE(TotalTrans, ',', '') from t2 where CAST(REPLACE(TotalTrans, ',', '') as int) < 500000 and CAST(REPLACE(TotalTrans, ',', '') as int) > 1000";