我有一个连接到Tableau桌面的SQL数据库.
我正在创建一个包含A和B数据字段作为过滤器的视图.A具有"a","b","c"等值.
现在,我想实现这个功能.当我在过滤器中选择"a"时,如何仅在B的过滤器中显示A列中具有值"a"的那些值?
为此我可以创建一个字段,指定当我在A的过滤器中单击特定值(如"a")时仅显示特定值.
例如,当点击"a"时,显示B的["1","2","3"].但是这种方法仅在B值不随A值变化时起作用.
虽然转置单列非常简单,但我需要转置大量数据,其中需要转置 3 组、10 多个相关列。
create table test
(month int,year int,po1 int,po2 int,ro1 int,ro2 int,mo1 int,mo2 int, mo3 int);
insert into test
values
(5,2013,100,20,10,1,3,4,5),(4,2014,200,30,20,2,4,5,6),(6,2015,200,80,30,3,5,6,7) ;
select * FROM test;
Run Code Online (Sandbox Code Playgroud)
给出
| 月 | 年 | 波1 | 氧分压 | 罗1 | 罗2 | 莫1 | 钼 | 莫3 |
|---|---|---|---|---|---|---|---|---|
| 5 | 2013年 | 100 | 20 | 10 | 1 | 3 | 4 | 5 |
| 4 | 2014年 | 200 | 30 | 20 | 2 | 4 | 5 | 6 |
| 6 | 2015年 | 200 | 80 | 30 | 3 | 5 | 6 | 7 |
使用 UNPIVOT 转置
select
month, year,
PO, RO, MO
from ( SELECT * from test) …Run Code Online (Sandbox Code Playgroud) 我有一个名为" dateadded" 的列的表,每天我都要运行一个查询来获得完成8,18,28,38,48,58等月的每一行.
这就是我今天的方式:
select * from table
where DATEADD(month, DATEADDED , 8) = GETDATE()
or DATEADD(month, DATEADDED , 18) = GETDATE()
or DATEADD(month, DATEADDED , 28) = GETDATE() ...
Run Code Online (Sandbox Code Playgroud)
但我不想使用100 or"或更多.有没有更好的方法呢?
我正在尝试编写一些代码来验证用户的行条目.我需要确保用户输入了":",因为这是行分隔符,但是我收到了错误.
这是错误:
该方法包含(CharSequence)类型String不适用于参数(char)
有什么办法可以解决这个问题吗?
import java.util.Scanner;
import java.lang.*;
public class REQ2
{
public static void main (String[] args)
{
String playername;
String line;
String[] list = new String[100];
int count = 0;
int score;
int time;
int totalScore =0;
Scanner sc = new Scanner(System.in);
System.out.println("Please enter your name");
playername = sc.nextLine();
if(playername.equals(""))
{
System.out.println("Player name was not entered please try again");
System.exit(0);
}
System.out.println("Please enter your game achivements (Game name:score:time played) E.g. Minecraft:14:2332");
while (count < 100){
line = sc.nextLine(); …Run Code Online (Sandbox Code Playgroud) 我想只保留十进制后的前两位数,但我不想舍入或转换该值.
例如:
143,655 -> 143.65
547934,945 -> 547934,94
Run Code Online (Sandbox Code Playgroud)
转换或舍入值不起作用,它会修改值.
sql-server ×3
sql ×2
t-sql ×2
cross-apply ×1
filter ×1
java ×1
select ×1
tableau-api ×1
unpivot ×1