有一个表叫Student, 含有以下字段:id, classid, name, birth, remark
1. 插入一条记录:classid=2 name=张三 birth=1982-07-19;
答案:insert into student (classid, name, birth) values(2, '张三', '1982-07-19')
2. 选出所有classid=4的学生;
答案:select * from student where classid=4
3. 查询所有班级出生年月大于1976的人;
答案:select * from student where birth>'1976'
4. 查询每个班级出生年月大于1976的人数;
答案:select classid, count(*) as number from student where birth>'1976' group by classid
5. 查询所有班级人数;
答案:select classid, count(*) as total from student group by classid
6. 查询所有REMAK中含有“计划”的记录;
答案:select * from student where remark like '%计划%'
7. 如果提高SQL的效率;
答案:在ASP中,
- 使用JOIN写复杂的SQL语句代替一堆SQL语句:一次查询出所有数据;
- 使用UPDATE语句代替rs.update();
- 采用批量处理SQL语句比一句一句执行的效率高;
- where子句中首先考虑索引;
- 避免使用TEXT等大的字段:数据库大执行效率也大;
其他方面:
- 使用内嵌视图代替临时表:临时表会消耗大量内存以及进行大量I/O操作;
- 避免使用LEFT JOIN与NULL值,用INNER JOIN,并设置字段不能为NULL;
- 使用索引;
- 使用分区视图;
- 使用触发器跑存储过程到另外一张统计表里;
8. 代码实现打印扬辉三角形;
答案:


private void PascalTriangle(int number)
{
int i, j, n, m;
n = number;
int[,] a = new int[20, 20];
for (i = 0; i < n; i++)
{
a[i, 0] = 1;
a[i, i] = 1;
}
for (i = 2; i < n; i++)
{
for (j = 1; j < i; j++)
{
a[i, j] = a[i - 1, j - 1] + a[i - 1, j];
}
}
for (i = 0; i < n; i++)
{
for (m = 1; m < n - i; m++)
{
Response.Write(" ");
}
for (j = 0; j <= i; j++)
{
Response.Write(a[i, j].ToString());
Response.Write(" ");
}
Response.Write("<br>");
}
}