从这个SQL
SELECT Objetos.NReg, Objetos.Type, Objetos.Date, Campos.Text, Contenido.Value
FROM (Campos LEFT JOIN Contenido ON Campos.Id = Contenido.Id_Campo) LEFT JOIN Objetos ON Contenido.Id_Objeto = Objetos.Id
GROUP BY Objetos.NReg, Objetos.Type, Objetos.Date, Campos.Text, Contenido.Value, Campos.Id
ORDER BY Objetos.NReg, Campos.Id;
我有一张这样的表:
NRegType Date Text Value
Year
001 1 Title Diccionario
001 1 Title Traducir
001 1 Subtitle Español-Ingles
002 1 Title Diccionario
002 1 Subtitle Inglés-Español
002 1 Editorial Hispanoamericana
我希望显示如下:
NRegType Date Title.1 Title.2 SubTitle Editorial Year
001 1 Diccionario Traducir Español-Ingles
002 2 Diccionario Inglés-Español Hispanoamericana
我得到的越多
TRANSFORM Min(Contenido.Value) AS VALORDE
SELECT Objetos.NReg, Objetos.Type, Objetos.Date
FROM Fields LEFT JOIN (Contenido LEFT JOIN Objetos ON Contenido.Id_Objeto = Objetos.Id) ON Campos.Id = Contenido.Id_Campo
GROUP BY Objetos.NReg, Objetos.Type, Objetos.Date
PIVOT Campos.Text;
NRegType Date Year Editorial Subtitle Title
001 1 Español-Ingles Diccionario
002 1 Hispanoamericana Inglés-Español Diccionario
上面有一个空字段。这可能吗? 我无法获得重复的字段标题值,也无法按照我想要的方式排序字段。 Table Campos是
Id Texto
1 Title
2 Subtitle
3 Editorial
4 Year
Contenidos表是:
Id Id_Objeto Id_Campo Value
1 1 1 Diccionario
2 1 2 Español-Ingles
3 2 1 Diccionario
4 2 2 Inglés-Español
5 2 3 Hispanoamericana
6 1 1 Traducir
Objetos是:
Id NReg Type Date
1 001 1
2 002 1
不知道我能做什么就可以了......