我正在接受培训,其中一个脚本具有以下命令:
SELECT SUM(Col2) FROM clust_table WHERE Col1 % 3 = 1
Run Code Online (Sandbox Code Playgroud)
我想知道这个片段在 WHERE 子句中的用途: Col1 % 3 = 1
我在互联网上做了一些研究,没有找到关于这个命令的参考。
小智 6
SQL 中的 % 可以以两种不同的格式使用。如果它在字符串中使用,LIKE
那么它是一个通配符,例如:
WHERE col_name like '%test%'
Run Code Online (Sandbox Code Playgroud)
这意味着找到所有col_name
包含“测试”一词的内容。
但是在这个特定的操作中,% 符号被用作模运算符。模数(在通常显示为MOD按钮的计算器上)返回余数。如果使用 for 循环显示数据并且您想计算列数,它可能是一个非常有用的工具 - 我最近在绘制网页时使用了模运算符。我的是 PHP,但这是一个例子:
$count = 0 ;
$records = array () ;
for ( $a = 0 ; $a < 100 ; $a++ )
$records[$a] = $a ;
foreach ( $records as $record )
{
if ( $count % 3 == 0 )
echo '<p>Three items</p>' ;
if ( $count % 10 == 0 )
echo '<p>Ten items</p>' ;
echo '<p>'.$record.'</p>' ;
$count++ ;
}
Run Code Online (Sandbox Code Playgroud)
这基本上会输出 1 - 100,每三个项目将输出“三个项目”,每十个项目将输出“十个项目”,因为任何其他数字都会返回一个值,例如:
5 / 10 = 0.5 (5 % 10 = 5)
2 / 3 = 0.666... (2 % 3 = 2)
50 / 10 = 5.0 (50 % 10 = 0)
9 / 3 = 3.0 (9 % 3 = 0)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6172 次 |
最近记录: |