Task02:SQL基础查询与排序-天池龙珠计划SQL训练营

Task02:SQL基础查询与排序

一、SELECT语句基础

1.1 从表中选取数据

SELECT语句

1.2从表中选取符合条件的数据

WHERE语句

1.3 相关法则

  • 星号(*)代表全部列的意思。
  • SQL中可以随意使用换行符,不影响语句执行(但不可插入空行)。
  • 设定汉语别名时需要使用双引号(")括起来。
  • 在SELECT语句中使用DISTINCT可以删除重复行。
  • 注释是SQL语句中用来标识说明或者注意事项的部分。分为1行注释"-- "和多行注释两种"/* */"。

二、算术运算符和比较运算符

2.1 算术运算符

2.2 比较运算符

2.3 常用法则

  • SELECT子句中可以使用常数或者表达式。
  • 使用比较运算符时一定要注意不等号和等号的位置。
  • 字符串类型的数据原则上按照字典顺序进行排序,不能与数字的大小顺序混淆。
  • 希望选取NULL记录时,需要在条件表达式中使用IS NULL运算符。希望选取不是NULL的记录时,需要在条件表达式中使用IS NOT NULL运算符。

三、逻辑运算符

3.1 NOT运算符

3.2 AND运算符和OR运算符

3.3 通过括号优先处理

3.4 真值表

3.5 含有NULL时的真值

NULL的真值结果既不为真,也不为假,因为并不知道这样一个值。

那该如何表示呢?

这时真值是除真假之外的第三种值——不确定ÿ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个例子,展示如何使用TAR:SQL Guided Pre-Training来训练数据: 1.准备数据 首先,需要准备一个包含自然语言问题和对应的SQL查询的数据集。例如,以下是一个简单的数据集: | Question | SQL Query | | -------- | --------- | | What is the name of the employee with ID 123? | SELECT name FROM employees WHERE id=123 | | How much did the company earn in 2020? | SELECT SUM(revenue) FROM sales WHERE year=2020 | | Show me the customers who have made at least 3 purchases. | SELECT customer_name FROM sales GROUP BY customer_name HAVING COUNT(*)>=3 | 2.预处理数据 接下来,需要使用TAR:SQL Guided Pre-Training的预处理工具对数据进行处理。以下是一个示例代码: ``` from transformers import AutoTokenizer from tar.preprocessing import SQLDatasetProcessor tokenizer = AutoTokenizer.from_pretrained('microsoft/TAR-1.0-SQL-GPT2') processor = SQLDatasetProcessor(tokenizer=tokenizer) train_data = processor.process(file_path='train_data.csv') dev_data = processor.process(file_path='dev_data.csv') ``` 其中,`train_data.csv`和`dev_data.csv`是包含问题和SQL查询的数据集文件。 3.训练模型 接下来,可以使用TAR:SQL Guided Pre-Training来训练模型。以下是一个示例代码: ``` from transformers import AutoModelForSeq2SeqLM, TrainingArguments, Trainer from tar.configs import SQLConfig from tar.tasks import SQLTask model = AutoModelForSeq2SeqLM.from_pretrained('microsoft/TAR-1.0-SQL-GPT2') config = SQLConfig.from_pretrained('microsoft/TAR-1.0-SQL-GPT2') task = SQLTask(model=model, config=config) training_args = TrainingArguments( output_dir='./results', evaluation_strategy='steps', eval_steps=100, save_total_limit=10, learning_rate=1e-4, per_device_train_batch_size=2, per_device_eval_batch_size=2, num_train_epochs=10, weight_decay=0.01, push_to_hub=False, ) trainer = Trainer( model=task, args=training_args, train_dataset=train_data, eval_dataset=dev_data, ) trainer.train() ``` 此代码将使用TAR:SQL Guided Pre-Training来训练模型,使用训练数据集`train_data`和开发数据集`dev_data`。其中,`TrainingArguments`是训练参数,可以根据需要进行修改。 4.使用模型 最后,可以使用训练好的模型来进行文本到SQL查询的转换。以下是一个示例代码: ``` from transformers import AutoTokenizer from tar.tasks import SQLTask tokenizer = AutoTokenizer.from_pretrained('microsoft/TAR-1.0-SQL-GPT2') model = SQLTask.from_pretrained('results/checkpoint-1000') text = 'What is the name of the employee with ID 123?' inputs = tokenizer(text, return_tensors='pt') outputs = model.generate(inputs['input_ids']) sql_query = tokenizer.decode(outputs[0], skip_special_tokens=True) print(sql_query) ``` 此代码将使用训练好的模型`model`,将自然语言问题`text`转换为对应的SQL查询。结果将打印出来。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值