语法
符号 | 含义 |
---|---|
/ | 绝对路径,标签之间的分隔符 |
// | 相对路径,表示从任意位置为起始 |
标签名
标签名 | 含义 | |
---|---|---|
[ ] | 判断条件 | |
@属性名 | 取属性的值 | |
= | 判断是否相等 | |
!= | 判断是否不相等 | |
and | 多条件连接符,并且 | |
or | 多条件连接符,或者 | |
text() | 取展现文本 | |
() | 打包 | |
contains() | 包含 | |
* | 通配符,代表所有节点 |
xpath轴语法
符号 | 含义 |
---|---|
ancestor | 选取当前节点的所有先辈(父、祖父等)。 |
ancestor-or-self | 选取当前节点的所有先辈(父、祖父等)以及当前节点本身。 |
attribute | 选取当前节点的所有属性。 |
child | 选取当前节点的所有子元素。 |
descendant | 选取当前节点的所有后代元素(子、孙等)。 |
descendant-or-self | 选取当前节点的所有后代元素(子、孙等)以及当前节点本身。 |
following | 选取文档中当前节点的结束标签之后的所有节点。 |
following-sibling | 选取当前节点之后的所有同级节点。 |
namespace | 选取当前节点的所有命名空间节点。 |
parent | 选取当前节点的父节点。 |
preceding | 选取文档中当前节点的开始标签之前的所有节点。 |
preceding-sibling | 选取当前节点之前的所有同级节点。 |
self | 选取当前节点。 |
样例
-
1.定位到淘宝首页搜索输入框
//input[@name='q' and @id='q']
image.png -
2.定位淘宝首页搜索按钮
//button[text()='搜索']
image.png -
3.定位淘宝首页左侧女装超链接
(//a[text()='女装'])[1]
image.png -
4.找到element首页上边的组件超链接
//a[contains(text(),'组件')]
text() 原字符串
'组件' 子串
image.png -
5.找到element首页组件下边的超链接
//h3[contains(text(),'组件')]/following-sibling::a
轴名称::节点名字
image.png
-
6.定位搜索按钮
//span[contains(text(),'搜索')]/parent::*
tapd_搜索.png
第二种
image.png image.png image.png image.png image.png image.png 8b5c3231aa8a61ebf50155c7c505a19.jpg1.删除Sales表中在Customers表不存在的客户记录
select distinct CustID from Customers;
delete from Sales where CustID not in(select distinct CustID from Customers) ;
2.选择销售额最大的客户信息,包括客户名称,城市,销售ID
select max(a.Discount,b.SaleMount)
from Sales a join Customers b on a. CustID=b. CustID
Select a.Name,a.City,a.Discount,b.SaleID
From Sales a join Customers b on a. a. CustID=b. CustID
Where a.Discount,b.SaleMount=(select max(a.Discount,b.SaleMount)
from Sales a join Customers b on a. CustID=b. CustID
)
网友评论