mysql ubuntu 应用记录 — Head First SQL (二)
source /home/jack/sql/HeadFirstSQLTables/boys.sql
mysql 可以用source 的方式 执行脚本
boys.sql
# Dump of table boys
# ------------------------------------------------------------
CREATE TABLE `boys` (
`boy_id` int(11) default NULL,
`boy` varchar(20) default NULL,
`toy_id` int(11) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
INSERT INTO `boys` (`boy_id`,`boy`,`toy_id`) VALUES ('1','Davey','3');
INSERT INTO `boys` (`boy_id`,`boy`,`toy_id`) VALUES ('2','Bobby','5');
INSERT INTO `boys` (`boy_id`,`boy`,`toy_id`) VALUES ('3','Beaver','2');
INSERT INTO `boys` (`boy_id`,`boy`,`toy_id`) VALUES ('4','Richie','1');
INSERT INTO `boys` (`boy_id`,`boy`,`toy_id`) VALUES ('6','Johnny','4');
INSERT INTO `boys` (`boy_id`,`boy`,`toy_id`) VALUES ('5','Billy','2');
ENGINE=InnoDB DEFAULT CHARSET=latin1;
与
ENGINE=MyISAM DEFAULT CHARSET=latin1;
区别
1
linux下vim中将^M删除或替换为换行符
linux下vim打开windows下编辑的文件时,由于换行符的差异,出现字符^M,如下图:
此时需要进行替换
输入:切换到命令行模式
全部替换,命令 %s/M/\r/g,注意不要复制粘贴,M的输入方法是先输入ctl+v,再输入ctl+m
选择型替换,命令 %s/^M/\r/gc,然后选择a为替换所有
若仅仅删除^M,则使用命名 %s/^M//g
vim 空格和换行的删除和替换
把一个很长的一行按空格分为多行
:%s/ +/\r/g
简单解释一下:
%s :在整个文件范围查找替换
/ :分隔符
- :匹配空格,其中“ ”表示空格,+表示重复1次或多次,加在一起表示一个或多个空格。
/r :换行符
/g :全局替换
删除文章中的空行
:g/^s*
/
d
简
单
解
释
一
下
:
g
:
全
区
命
令
/
:
分
隔
符
s
∗
/d 简单解释一下: g :全区命令 / :分隔符 ^s*
/d简单解释一下:g:全区命令/:分隔符s∗ :匹配空行,其中^表示行首,s表示空字符,包括空格和制表符,*重复0到n个前面的字符,$表示行尾。连起来就是匹配只有空字符的行,也就是空行。
/d :删除该行
删除行尾空格:
:%s= *
=
=
该
命
令
全
局
查
找
文
本
文
件
的
行
尾
空
格
并
删
除
。
解
释
:
=
为
== 该命令全局查找文本文件的行尾空格并删除。 解释: %s全局查找替换 =为%s命令的分隔符,如果把=换为/,则该命令可以写为:%s/ *
==该命令全局查找文本文件的行尾空格并删除。解释:=为//
” *$”, $表示行尾,*匹配前面0个到n个字符,*前面是空格,因此此正则表达式匹配行尾的0个到n个字符。
==,分隔符没有中间没有内容,表示删除匹配空格, 在这里表示删除行尾空格。
如何快速去掉^M呢,采取以下步骤就行了:
- vi dosfilename
- Press Esc
- Enter this string: %s/^M//g (^M = Ctrl v + Ctrl m)
- Press enter (the ^M cleared!)
- :wq! (save the file)
select
SELECT * FROM my_contacts ;
SELECT * FROM my_contacts WHERE first_name = ‘Anne’;
source /home/jack/sql/HeadFirstSQLTables/easy_drinks.sql
source /home/jack/sql/HeadFirstSQLTables/doughnut_ratings.sql
select location,type FROM doughnut_ratings WHERE rating =10
select location FROM doughnut_ratings WHERE type = ‘plain glazed’ AND rating =10;
SELECT drink_name FROM easy_drinks WHERE main = ‘soda’ AND amount1 > 1 ;
source /home/jack/sql/HeadFirstSQLTables/drink_info.sql
SELECT drink_name FROM drink_info WHERE cost >= 3.5 AND calories < 50;
SELECT drink_name FROM drink_info WHERE drink_name >= ‘L’ AND drink_name < ‘M’ ;
SELECT drink_name from easy_drinks WHERE main = ‘cherry juice’ or second = ‘cherry juice’;
SELECT drink_name FROM drink_info Where calories IS NULL ;
SELECT * FROM my_contacts WHERE location LIKE ‘%CA’;
SELECT first_name FROM my_contacts Where first_name LIKE ‘%ne’ ;
SELECT first_name FROM my_contacts Where first_name LIKE ‘_ne’ ;
SELECT drink_name FROM drink_info WHERE calories >= 30 AND calories <= 60 ;
SELECT drink_name FROM drink_info WHERE calories BETWEEN 30 AND 60 ;
select drink_name FROM drink_info WHERE NOT carbs BETWEEN 3 AND 5 ;
select drink_name FROM drink_info WHERE carbs BETWEEN 3 AND 5 ;