精华内容
下载资源
问答
  • Database之SQLSever:SQL命令实现查询之多表查询、嵌套查询、分页复杂查询,删除表内重复记录数据、外连接等案例之详细攻略 目录 SQL命令实现查询之多表查询、嵌套查询、分页复杂查询 1、多表查询 2、嵌套...

    Database之SQLSever:SQL命令实现查询之多表查询、嵌套查询、分页复杂查询,删除表内重复记录数据、外连接等案例之详细攻略

     

     

    目录

    SQL命令实现查询之多表查询、嵌套查询、分页复杂查询

    1、多表查询

    展开全文
  • Hive常用的SQL命令操作

    万次阅读 2013-12-07 12:35:06
    Hive常用的SQL命令操作

    1、表相关SQL操作

    1.1、创建内部表

    CREATE TABLE table_name (name string); 

    1.2、创建内部表,并指定分区字段

    CREATE TABLE table_name (name string) PARTITIONED BY (dt STRING); 

    1.3、创建内部表,并指定分隔符

    CREATE TABLE table_name(name string) PARTITIONED BY (dt string ) ROW FORMAT DELIMITED
    FIELDS TERMINATED BY '\001'
    COLLECTION ITEMS TERMINATED BY ':'
    MAP KEYS TERMINATED BY ',' ;

    1.4 创建外部表,指定分区,带分隔符

    CREATE EXTERNAL TABLE outer_table_with_partition(name string) PARTITIONED BY (dt string ) ROW FORMAT DELIMITED
    FIELDS TERMINATED BY '\001'
    COLLECTION ITEMS TERMINATED BY ':'
    MAP KEYS TERMINATED BY ',' 
    location '/home/hive/table_name/' ;

    1.5 创建内部表,并判断是否内布表是否已经存在

    CREATE TABLE  IF NOT EXISTS  table_name (name string); 
    加了 IF NOT EXISTS ,sql执行的结果总是成功;如果没加,表存在的情况下会返回失败。

    1.6 显示所有表

    SHOW TABLES;

    1.7 显示部分表

    show tables like "*30d" ; (显示后缀带30d的表名)

    1.8 表中添加一列 

    ALTER TABLE table_name ADD COLUMNS (new_col INT); 可以一次增加多个列

    1.9 添加一列并增加列字段注释

    ALTER TABLE table_name ADD COLUMNS (new_col2 INT COMMENT 'a comment');

    1.10 更改表名

    ALTER TABLE table_name RENAME TO 3koobecaf;

    1.11 删除表

    DROP TABLE pokes;

    1.12 修改原来的列

    alter table table_name  change c1_old_name  c1_new_name  string  //修改hive列c1_old_name,列名改为c1_new_name,同时修改字段类型。

    1.13 删除列

    ALTER TABLE table_name REPLACE COLUMNS (c1_new string ,c2_new string )
    注意:执行完上述sql后,新表的结构是(c1_new string ,c2_new string )。

    1.14 修改表存储位置

    alter table  table_name  set location 'viewfs://nsX/user/hive/warehouse/raw.db/weixin/sogou_com/weixin_sogou_com_error'

    1.15 修改表的字段分隔符 

    alter table table_name  SET SERDEPROPERTIES ('field.delim' = '\t');
    alter table table_name  SET SERDEPROPERTIES ('colelction.delim' = '\t');
    alter table table_name  SET SERDEPROPERTIES ('mapkey.delim' = '\t');
    alter table table_name  SET SERDEPROPERTIES ('line.delim' = '\t');
    注意:如果一个表带有分区,修改了表的schema后,只会对后续插入的分区有影响。之前的分区还是原来的列。因为hive把每个分区的schema信息单独记录在数据库了。所以需要把原来的分区全部drop掉,重新add

    1.16 将文件中的数据加载到表中

    LOAD DATA LOCAL INPATH './examples/files/kv1.txt' OVERWRITE INTO TABLE table_name; 

    1.17 加载本地数据,同时给定分区信息

    LOAD DATA LOCAL INPATH './examples/files/kv2.txt' OVERWRITE INTO TABLE table_name PARTITION (ds='2008-08-15');表必须带分区列。

    1.18 加载hdfs数据, 同时给定分区信息

    LOAD DATA INPATH '/user/myname/kv2.txt' OVERWRITE INTO TABLE invites PARTITION (ds='2008-08-15');

    The above command will load data from an HDFS file/directory to the table. Note that loading data from HDFS will result in moving the file/directory. As a result, the operation is almost instantaneous. 

    1.19 查看表的描述

    desc formatted table_name 或者 desc table_name 

    展开全文
  • 基本SQL命令表命令

    千次阅读 2018-09-01 11:36:59
    创建表(别忘了选择库,指定字符集(默认和库一样)) create table [if not exists] 表名( 字段名1 数据类型, 字段名2 数据类型, 字段名3 数据类型, …. 字段名n 数据类型 )[character set utf8]; [可...

    表的管理

    表的基本操作

    1. 创建表(别忘了选择库,指定字符集(默认和库一样))
      create table [if not exists] 表名(
      字段名1 数据类型,
      字段名2 数据类型,
      字段名3 数据类型,
      ….
      字段名n 数据类型
      )[character set utf8];
      [可选项]
    2. 查看创建表的语句(字符集,存储引擎)
      show create table 表名;
    3. 查看表结构(多少字段,各字段的详细属性信息等)
      desc 表名;
    4. 删除表
      drop table 表名1, 表名2,…;

    表的复制

    1. 复制选择的内容 语法:
      create table 表名 select …from 表名 where 条件;
    2. 仅仅复制表结构:
      create table 表名 select … from 表名 where false;
      # 相当于只复制抬头 采用 desc 查看是否成功

    表字段的操作

    1. 语法: alter table 表名 ….;
    2. 添加字段(add):
      alter table 表名 add 字段名 数据类型;
      (默认添加在最后字段)
      alter table 表名 add 字段名 数据类型 first;
      (添加在第一字段)
      alter table 表名 add 字段名 数据类型 after 字段名2;
      (添加在字段名2的后边)
    3. 删除字段(drop):
      alter table 表名 drop 字段名;
    4. 修改字段数据类型(modify):
      alter table 表名 modify 字段名 新数据类型;
      修改会受到原有数据限制,如果原有数据不能满足新的数据类型,修改不会成功,会报错,超出范围
      out of range
    5. 修改表的名字(rename):
      alter table 表名 rename 新表名;
    6. 修改字段名(change):
      alter table 表名 change 原字段名 新字段名 新数据类型;

    表记录的操作 增删改查

    1. 插入(insert)
      1. insert into 表名 values(值1), (值2),(.)..
        值1 是 一整条记录,多个字段值,按顺序,按个数写好
      2. insert into 表名 (字段名1, 字段名2,…) values(值1),(值2)…; 剩余字段自动插入默认值
    2. 查询(select)
      1. select * from 表名 [where 条件];
        查询记录(满足条件的)所有记录
      2. select 字段1,字段2… from 表名 [where 条件];
        查询(满足条件的)字段记录
    3. 删除表记录(delete)
      1. delete from 表名 where 条件;
        注意: 删除条件, 一定要加删除条件,否则会全部删除
    4. 更新表记录(update)
      1. update 表名 set 字段名=值1, 字段2=值2 where 条件;
        注意: 条件, 一定要加条件,否则会全部更改

    数据导入(导入表记录)

    1. 作用: 将文件系统中的内容导入到数据库中
    2. 语法格式:
      load data infile “路径+文件名”
      into table 表名
      fields terminated by “分隔符” # 每一个单元格与字段用分隔符分隔
      lines terminated by “\n”; # 遇到换行符开始下一条记录

    示例:将×××.csv导入到数据库中

    1. 先在数据库中创建对应的表
      create table score(
      字段名 数据类型,

      )character set utf8;
    2. 执行数据导入
    3. 查看 将文件放入mysql用户的 搜索路径中
      show variables like “secure_file_priv”;
      # /var/lib/mysql-files/
    4. 将文件拷贝到搜索路径中(采用tab判断路径正确性)
      sudo cp ~/×××.csv /var/lib/mysql-files/
      sudo ls /var/lib/mysql-files/ 查看一下有没有复制成功
    5. 执行数据导入语句
      load data infile “/var/lib/mysql-files/×××.csv”
      into table score
      fields terminated by “,”
      lines terminated by “\n”;

    数据导出(导出表记录)

    1. 把数据库表的记录导出到系统文件里
    2. 导出语法:
      select …from 表名 where 条件
      into outfile “路径+文件名”
      fields terminated by ‘分隔符’
      lines terminated by ‘\n’;
    3. 步骤:
      1. 查看搜索路径:
        show variables like “%secure%”
        # /var/lib/mysql-files/
      2. 执行数据导出语句:
        select 字段1, 字段2, 字段3 from 库名.库内的表名
        into outfile “/var/lib/mysql-files/×××.csv”
        fields terminated by ‘,’
        lines terminated by ‘\n’;
        # 空值 变为 \N
        # 空字符串 变为 空

    查看及更改文件的权限

    1. ls -l 文件名 # 查看文件详细信息,可以查看文件权限
      - rw- r– r– 1 root root 142 8月 31 16:28 ×××.csv
      符号:权限:计数
      r: 可读 4
      w: 可写 2
      x: 可执行 1
      例:chmod 555 文件名 更改此文件均为读和执行权限
    2. 三组权限分别所属
      u: 用户/所有者
      g: 所属组,同组其他用户
      o: 其他组其他人

      a: 所有人

    3. 添加权限: +r +w +x +rw …
      删除权限: -r -w -x -rw …
      chmod u +w ×××.txt 给文件的所有者 添加写权限
    展开全文
  • sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为“sql脚本文件”),然后通过相关的命令执行这个sql脚本文件。基本步骤如下:1、创建包含sql命令的sql脚本文件文件中...

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

    sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为“sql脚本文件”),然后通过相关的命令执行这个sql脚本文件。基本步骤如下:
    1、创建包含sql命令的sql脚本文件
    文件中包含一些列的sql语句,每条语句最后以;结尾,文件内容示例如下:
    --创建表,使用“--”进行注释
    create table 表名称
    (                   
      Guid Varchar(38) not null primary key,  
      Title Varchar(255),       
                  
    ) TYPE=InnoDB;

    --在表A中增加字段Status
    alter table A add Status TinyInt default '0';

    --在表A上创建索引
    create index XX_TaskId_1 on A(Id_);
    --在A表中添加一条记录
    Insert into A (Id,ParentId, Name) values(1,0,'名称');
    --添加、修改、删除数据后,有可能需要提交事务
    Commit;

    2、执行sql脚本文件
    方法一 
    使用cmd命令执行(windows下,unix或linux在的其控制台下)
    【Mysql的bin目录】\mysql –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】,示例:
    D:\mysql\bin\mysql –uroot –p123456 -Dtest<d:\test\ss.sql
    注意:
    A、如果在sql脚本文件中使用了use 数据库,则-D数据库选项可以忽略
    B、如果【Mysql的bin目录】中包含空格,则需要使用“”包含,如:“C:\Program Files\mysql\bin\mysql” –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】

    方法二 进入mysql的控制台后,使用source命令执行
    Mysql>source 【sql脚本文件的路径全名】 或 Mysql>\. 【sql脚本文件的路径全名】,示例:

    source d:\test\ss.sql 或者 \. d:\test\ss.sql

     

    展开全文
  • SQL命令和常用语句大全

    万次阅读 2016-05-22 09:17:28
    SQL命令和常用语句大全【经典】
  • Oracle_使用bat命令执行sql命令文件

    千次阅读 2015-01-21 15:34:48
    使用bat命令执行sql命令文件
  • SQL常用命令

    万次阅读 2018-07-22 17:35:15
    SQL常用命令使用方法: (1) 数据记录筛选: sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]" sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 ...
  • ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 2011-11-09 -修复有时候用DataGrid...
  • Laravel 记录SQL日志

    千次阅读 2017-04-07 14:40:52
    在项目开发过程中或者是性能优化中,经常会有要查看执行sql的情况,然而Laravel日志默认不记录执行sql。好在留有相关接口,我们可以很方便的就是想SQl日志功能。
  • SqlServer常用命令

    千次阅读 2019-05-22 09:35:34
    (1) 数据记录筛选: sql=“select * from 数据表 where 字段名=字段值 order by 字段名 [desc]” sql=“select * from 数据表 where 字段名 like ‘%字段值%’ order by 字段名 [desc]” sql=“select top 10 * from...
  • 知道了SQL命令是什么,我们还要知道)SQL命令的执行方式,分为两种:交互模式和脚本模式。 交互模式:就是我们打开的MySQL命令窗口,查询数据库、进入数据库一样,输入一行,服务端就执行一行,不能一口气输入好几行...
  • 【译文】如何在R语言中使用SQL命令

    万次阅读 2016-03-28 17:25:17
    【译文】如何在R语言中使用SQL命令作者 Fisseha Berhane对于有SQL背景的R语言学习者而言,sqldf是一个非常有用的包,因为它使我们能在R中使用SQL命令。只要掌握了基本的SQL技术,我们就能利用它们在R中操作数据框。...
  • SQL删除一个表中所有记录命令

    万次阅读 2008-12-21 14:17:00
    TRUNCATE TABLE删除表中的所有行,而不记录单个行删除操作。 语法TRUNCATE TABLE name参数name是要截断的表的名称或要删除其全部行的表的名称。注释TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE ...
  • SQL BCP命令

    千次阅读 2009-07-13 09:46:00
    BCP是SQL Server中负责导入导出数据的一个命令行工具,它是基于DB-Library的,并且能以并行的方式高效地导入导出大批量的数据 BCP除了可以在控制台执行外,还可以通过调用SQL Server的一个系统存储过程xp_cmdshell以...
  • 今天执行SQL遇到这个错误:ORA-00933: SQL 命令未正确结束!记录一下排查过程 1. 先检查SQL是否有语法错误 2. 把SQL放到界面客户端(如PLSQL、Navicat)上尝试执行,如果有动态参数需要就先写一个固定的参数 3. ...
  • Database之SQLSever:SQLSever数据库管理学习并深入理解SQL命令语句综合篇《初级→进阶中级→高级》(持续更新,建议收藏) SQLSever数据库管理学习并深入理解SQL命令语句综合篇《初级→进阶中级→高级》 了解...
  • 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) 2、删除表中多余...
  • 查询SQLServer执行过的SQL记录(历史查询记录) SELECT TOP 1000 QS.creation_time, SUBSTRING(ST.text, (QS.statement_start_offset / 2) + 1, ((CASE QS.statement_end_offset WHEN - 1 THEN DATALENGT...
  • ADO助手---一个获取ADO连接字符串,测试SQL命令的辅助软件 2010-09-06 +初始版本发布 2011-11-09 -修复有时候用DataGrid显示报错“The rowset is not bookmarkable.” +增加根据SQL生产MFC数据库类的功能 +增加导入...
  • SQL数据库操作命令大全

    万次阅读 多人点赞 2017-11-16 16:05:50
    SQL数据库操作命令大全
  • T-SQL命令在SQL Server查询中的运用

    千次阅读 2004-08-31 22:43:00
    首先需要说明的是这篇文章的内容并不是如何调节SQL Server查询性能的(有关这方面的内容能写一本书),而是如何在SQL Server查询性能的调节中利用SET STATISTICS IO和SET STATISTICS TIME这二条被经常...-SQL命令的...
  • SQLSERVER数据库,安装、备份、还原等问题: 一、存在已安装了sql server 2000,或2005等数据库,再次安装2008,会出现的问题 1、卸载原来的sql server 2000、2005,然后再安装sql server 2008,否则经常sql ...
  • sql的一些命令及函数

    千次阅读 多人点赞 2020-12-02 10:57:47
    *一、一些最重要的 SQL 命令: SELECT - 从数据库中提取数据 UPDATE - 更新数据库中的数据 DELETE - 从数据库中删除数据 INSERT INTO- 向数据库中插入新数据 CREATE DATABASE - 创建新数据库 ALTER DATABASE - ...
  • 本文记录了使用SQL命令批量替换URL的方法以及除了替换URL之外,网站更换图片URL地址所必须的其他操作。 导航狗中的图片使用的是图床的方式进行的存储,一开始我们使用的图床地址是 image16.zhaokaifeng.com ...
  • Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略 目录 SQL命令实现四则运算、desc降序、like模糊查询、distinct去重的...
  • 常用的Sql命令之插入数据

    千次阅读 2020-04-23 21:32:51
    1、向表lianxi2插入数据 insert into lianxi2(id,uname,idoxu) values("1","hanhan","2018"),("2","hanhan2","2018") insert into lianxi2(id,uname,sex) values("11","hanhan3","1"),("12","hanhan4","2"),("13",...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 320,767
精华内容 128,306
关键字:

属于选择记录的sql命令