ID NAME AGE DEPTNO SALARY
1 shasank 25 11 2025
2 raju 27 12 2027
3 son 33 12 2131
6 bali 31 10 2031
4 don 33 11 2132
5 rambo 32 11 2121
7 dimpu 33 12 2314
8 chir 34 10 2123
9 nag 35 10 2213
10 ram 28 13 2141
答案 0 :(得分:2)
使用模运算符? mod()
表单是标准方式,但很多数据库也使用%
运算符。
select * from table where MOD(ID,3) = 1;
答案 1 :(得分:1)
select * from table where id in (1,4,7,10,13)
答案 2 :(得分:1)
SELECT * FROM table
WHERE ID % 3 = 1
当然,假设您正在寻找每三个身份证。
此外,这是通过SQL Server完成的 - 不确定您使用的数据库。
修改强>
这是一个不使用ID(SQL Server)的选项
SELECT *
FROM (SELECT *, ROW_NUMBER() OVER(ORDER BY Name) RowNum
FROM table) X
WHERE X.RowNum % 3 = 1
答案 3 :(得分:1)
SET @i = 0;
SELECT ..., ((@i := @i + 1) % 3) AS `i` FROM `table` ... HAVING `i` = 1