出版社名称在表一中,单价在表二中,查询每种图书的所有出版社名称和单价,并按单价从高到低的顺序排序
时间: 2024-03-17 07:42:38 浏览: 18
抱歉,我是一名语言模型,无法查看表格和数据库。但是,我可以为您提供SQL语句的示例,您可以根据自己的表格和数据进行修改:
```
SELECT 表一.出版社名称, 表二.单价
FROM 表一
INNER JOIN 表二
ON 表一.图书编号 = 表二.图书编号
ORDER BY 表二.单价 DESC;
```
请将示例中的“表一”和“表二”替换为您的实际表格名称,将“出版社名称”、“单价”、“图书编号”替换为您实际的列名。
相关问题
excel中怎么在表一中计算表二中两个值
您可以使用Excel中的VLOOKUP函数来计算表二中的两个值。具体步骤如下:
1. 在表一中选择一个单元格,输入以下公式:=VLOOKUP(查找值,表二区域,列数,FALSE)
2. 将“查找值”替换为您要查找的值,将“表二区域”替换为包含要查找值和要返回值的表二区域,将“列数”替换为包含要返回值的列的列号。
3. 按Enter键,Excel将返回表二中与查找值匹配的值。
4. 重复步骤1-3,以计算表二中的另一个值。
希望这可以帮助您解决问题。
使用vba如果表一中的a列和表二中的a列相同,则表二中的c列减表一中的c列输出到J列
可以使用VBA中的For循环和If语句实现这个功能,具体代码如下:
```
Sub CompareAndSubtract()
Dim ws As Worksheet
Dim i As Long, j As Long
Dim lastRow1 As Long, lastRow2 As Long
Dim a1 As Variant, a2 As Variant, c1 As Variant, c2 As Variant
'指定需要处理的工作表
Set ws = ThisWorkbook.Worksheets("Sheet1")
'获取表一和表二的最后一行
lastRow1 = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
lastRow2 = ws.Cells(ws.Rows.Count, "D").End(xlUp).Row
'将表一中的a列和c列的数据存储到数组中
a1 = ws.Range("A2:A" & lastRow1).Value
c1 = ws.Range("C2:C" & lastRow1).Value
'循环遍历表二中的每一行,查找是否与表一中的a列相同
For i = 2 To lastRow2
'获取当前行的a列和c列的数据
a2 = ws.Range("D" & i).Value
c2 = ws.Range("F" & i).Value
'循环查找表一中是否存在相同的a列数据
For j = 1 To UBound(a1)
If a1(j, 1) = a2 Then
'找到相同的a列数据,将表二中的c列减去表一中的c列,输出到J列
ws.Range("J" & i).Value = c2 - c1(j, 1)
Exit For '跳出循环,提高效率
End If
Next j
Next i
End Sub
```
在这个代码中,我们首先指定需要处理的工作表,然后获取表一和表二的最后一行。接着,我们将表一中的a列和c列的数据存储到数组中,并且循环遍历表二中的每一行,查找是否与表一中的a列相同。如果找到相同的a列数据,就将表二中的c列减去表一中的c列,输出到J列。最后,我们可以使用VBA编辑器中的“运行”按钮来运行这段代码,或者将这段代码与按钮绑定,方便用户点击来快速执行。