作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在sqlite中有一个表值,例如..
我在这样的 sqlite 查询中获得了值(value)..
select * from tablename where id='101' and id='102' and id='1' and id='18'
101 Local Local Local Local Local Local
102 9 12 9 12 9
1 3:55 4:20 4:40 5:00 5:20 5:40
18 4:50 5:15 5:35 5:55 6:15 6:35
Local 9 3:55 4:50
Local 12 4:20 5:15
Local 9 4:40 5:35
Local 12 5:00 5:55
Local 9 5:20 6:15
Local 9 5:40 6:35
最佳答案
哦,所以你被一个糟糕的数据库设计困住了,你不能改变它......这很糟糕。它应该被分成 4 个表(至少)。无论如何,在这种特殊情况下,这是一种方法。
我假设第一个查询等效于:
SELECT id, F1, F2, F3, F4, F5, F6
FROM tablename
WHERE id IN (101,102,1,18)
SELECT
MAX(CASE WHEN id=101 THEN F1 END) R1,
MAX(CASE WHEN id=102 THEN F1 END) R2,
MAX(CASE WHEN id=1 THEN F1 END) R3,
MAX(CASE WHEN id=18 THEN F1 END) R4
FROM tablename
UNION
SELECT
MAX(CASE WHEN id=101 THEN F2 END) R1,
MAX(CASE WHEN id=102 THEN F2 END) R2,
MAX(CASE WHEN id=1 THEN F2 END) R3,
MAX(CASE WHEN id=18 THEN F2 END) R4
FROM tablename
UNION
SELECT
MAX(CASE WHEN id=101 THEN F3 END) R1,
MAX(CASE WHEN id=102 THEN F3 END) R2,
MAX(CASE WHEN id=1 THEN F3 END) R3,
MAX(CASE WHEN id=18 THEN F3 END) R4
FROM tablename
UNION
SELECT
MAX(CASE WHEN id=101 THEN F4 END) R1,
MAX(CASE WHEN id=102 THEN F4 END) R2,
MAX(CASE WHEN id=1 THEN F4 END) R3,
MAX(CASE WHEN id=18 THEN F4 END) R4
FROM tablename
UNION
SELECT
MAX(CASE WHEN id=101 THEN F5 END) R1,
MAX(CASE WHEN id=102 THEN F5 END) R2,
MAX(CASE WHEN id=1 THEN F5 END) R3,
MAX(CASE WHEN id=18 THEN F5 END) R4
FROM tablename
UNION
SELECT
MAX(CASE WHEN id=101 THEN F6 END) R1,
MAX(CASE WHEN id=102 THEN F6 END) R2,
MAX(CASE WHEN id=1 THEN F6 END) R3,
MAX(CASE WHEN id=18 THEN F6 END) R4
FROM tablename
CREATE TABLE S (id INTEGER, name TEXT, address TEXT)
可以有模板“具有 id ID 的供应商称为 NAME 并且位于 ADDRESS”。现在,当您将其内容放入模板时,此表中的每一行都会为您提供关于世界的真实陈述: if
S
将包含一行
(1, "Bob & Co.", "Lime St., 125")
,然后它会告诉您“ID 为 1 的供应商称为 Bob & Co.,位于 Lime St., 125”。
R1 R2 R3 R4
============================
Local 9 3:55 4:50
...
关于sqlite - 如何将列值转换为 Sqlite 中的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15759136/
我是一名优秀的程序员,十分优秀!