我正在尝试编写一个SQL查询,该查询仅返回特定列(例如“数量”列)包含仅包含一个数字的数字的行,例如只有'1(1111111 ......)或仅'2'(2222222 ......)等。
此外,'amount'列还包含带小数点的数字,并且还应返回这些值,例如: 1111.11,2222.22等
答案 0 :(得分:1)
如果您想使查询通用,您不必指定每个可能的数字,您可以更改以下内容:
WHERE LEN(REPLACE(REPLACE(amount,LEFT(amount,1),''),'.','') = 0
这将始终使用第一个数字作为字符串其余部分的比较
答案 1 :(得分:0)
如果您使用的是SQL Server,则可以尝试使用此脚本:
SELECT *
FROM (
SELECT CAST(amount AS VARCHAR(30)) AS amount
FROM TableName
)t
WHERE LEN(REPLACE(REPLACE(amount,'1',''),'.','') = 0 OR
LEN(REPLACE(REPLACE(amount,'2',''),'.','') = 0
答案 2 :(得分:0)
我尝试用这个代替1111111代替列名:
private final Marker YourMarker;
//Your code
YourMarker=googleMap.addMarker(markerOptions);
YourMarker.showInfoWindow();