考研 408 × 求职面试
知识点 · 数据库系统 · 进阶
每日一题 · 数据库系统
解析
面试小贴士 · 数据库系统
代码实现 · C++
#include <iostream>
#include <vector>
using namespace std;
struct Emp { int id; int age; int salary; };
int main() {
vector<Emp> R = {{1,25,6000},{2,30,4500},{3,35,8000}};
// 元组关系演算:筛选工资>5000的整行元组
vector<Emp> tupleRes;
for (auto &t : R) if (t.salary > 5000) tupleRes.push_back(t);
// 域关系演算:存在工资>5000,仅投影出id域
vector<int> domainRes;
for (auto &t : R) if (t.salary > 5000) domainRes.push_back(t.id);
cout << 'T' << ':';
for (auto &t : tupleRes) cout << ' ' << t.id << ',' << t.age << ',' << t.salary;
cout << endl << 'D' << ':';
for (auto &n : domainRes) cout << ' ' << n;
return 0;
}