把只是把你的表TA改成了clozetest,通篇都改了,为什么有时“某些”结果行中choiceA,choiceB,choiceC,choiceD 和answer全是null,有时“全部”结果行中choiceA,choiceB,choiceC,choiceD 和answer全是null?
还有一个情况,就是当“某些”行有这程问题时,question列中的内容“好像”都含有“Authorware”CREATE TABLE TC(ID INT IDENTITY(1,1),question VARCHAR(255), choiceA VARCHAR(255), choiceB VARCHAR(255), choiceC  VARCHAR(255), choiceD VARCHAR(255), answer VARCHAR(1))
SELECT * INTO # FROM (
SELECT ID,question,choiceA FROM clozetest UNION ALL
SELECT ID,question,choiceB FROM clozetest UNION ALL
SELECT ID,question,choiceC FROM clozetest UNION ALL
SELECT ID,question,choiceD FROM clozetest
) A 
ORDER BY ID,NEWID()SELECT *,SEQ=IDENTITY(INT,1,1) INTO #T  FROM #TRUNCATE TABLE TC
INSERT TC(question,choiceA,choiceB,choiceC,choiceD,answer)
SELECT TC.question,choiceA,choiceB,choiceC,choiceD,
           CASE WHEN choiceA=choice THEN 'A' WHEN choiceB=choice THEN 'B' WHEN choiceC=choice THEN 'C' WHEN choiceD=choice THEN 'D'  END AS answer
FROM (SELECT ID,question,
    MAX(CASE WHEN SEQ=1 THEN choiceA END) AS choiceA,
    MAX(CASE WHEN SEQ=2 THEN choiceA END) AS choiceB,
    MAX(CASE WHEN SEQ=3 THEN choiceA END) AS choiceC,
    MAX(CASE WHEN SEQ=4 THEN choiceA END) AS choiceD
FROM (SELECT ID,question,choiceA,SEQ-(SELECT COUNT(*) FROM #T WHERE ID<A.ID) AS SEQ FROM #T  AS A) T
GROUP BY ID,question) AS TC 
JOIN
(SELECT ID,CASE ANSWER WHEN 'A' THEN choiceA WHEN 'B' THEN choiceB WHEN 'C' THEN choiceC WHEN 'D' THEN choiceD END AS choice
 FROM clozetest) AS clozetest
ON TC.ID=clozetest.ID
ORDER BY NEWID()--SELECT * FROM TC
select * from tc where question='如果暂时不想看到Flash中的某个图层,可以将其(  )'
select * from tc where isnull(choiceA,'11')='11'
--DROP TABLE TB
DROP TABLE TC
DROP TABLE #
DROP TABLE #T

解决方案 »

  1.   

    我的clozetest表中任何行列中都绝没有null值。
    该表的结构也和被置换的TA相同。
      

  2.   

    7 在虚拟世界中参与者可以穿梭在大街小巷、飞越摩天大楼;或拿着手术刀给“病人”作外科手术……,这主要体现了虚拟现实的(   ) 沉浸感 构想性 交互性 实时性 A
    8 以下关于CD格式的声音文件叙述错误的是(    ) 标准CD格式的采样频率是44.1kHz,速率为88KB/s,量化位数16位 可以直接把CD音频文件复制到硬盘上播放 CD是当今世界上音质最好的音频格式 CD光盘可以在CD唱机中播放,也能装在CD-ROM里用计算机里的各种播放软件来播放。 B
    9 多媒体作品界面的设计要遵循一定的原则和方法,它们是(  )    ①注意突出主题信息   ②界面布局要简明清晰   ③界面布局应该有整体上的一致性   ④注意文字显示的结果   ②③④ ①②④ ①②③④ ①②③ C
    10 下列文件格式中,不是声音格式文件的是(    ) WAV格式 MID格式 JPG格式 MP3格式 C
    11 在Authorware中,用来控制作品流程的() 声音图标 显示图标 导向图标 数字电影图标 C
      

  3.   

    你试把 VARCHAR(255) 改为 NVARCHAR(255)
      

  4.   

    我上传不了截图,重发如下,红色的是question列,绿的是answer列,红绿中间是choiceA至choiceD四个列7 在虚拟世界中参与者可以穿梭在大街小巷、飞越摩天大楼;或拿着手术刀给“病人”作外科手术……,这主要体现了虚拟现实的(  ) 沉浸感 构想性 交互性 实时性 A 
    以下关于CD格式的声音文件叙述错误的是(    ) 标准CD格式的采样频率是44.1kHz,速率为88KB/s,量化位数16位 可以直接把CD音频文件复制到硬盘上播放 CD是当今世界上音质最好的音频格式 CD光盘可以在CD唱机中播放,也能装在CD-ROM里用计算机里的各种播放软件来播放。 B 
    多媒体作品界面的设计要遵循一定的原则和方法,它们是(  )    ①注意突出主题信息  ②界面布局要简明清晰  ③界面布局应该有整体上的一致性  ④注意文字显示的结果  ②③④ ①②④ ①②③④ ①②③ C 
    10 下列文件格式中,不是声音格式文件的是(    ) WAV格式 MID格式 JPG格式 MP3格式 C 
    11 在Authorware中,用来控制作品流程的() 声音图标 显示图标 导向图标 数字电影图标 C
      

  5.   

    我的clozetest中除了id是int,其它都是nvarchar(255),anwer是nvarchar(1)
      

  6.   

    不行,我早改了,不行,依旧
    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author: <Author,,Name>
    -- Create date: <Create Date,,>
    -- Description: <Description,,>
    -- =============================================
    ALTER PROCEDURE [dbo].[Random]
    AS
    BEGIN
    CREATE TABLE TC(ID INT IDENTITY(1,1),question NVARCHAR(255), choiceA NVARCHAR(255), choiceB NVARCHAR(255), choiceC  NVARCHAR(255), choiceD NVARCHAR(255), answer NVARCHAR(1))
    SELECT * INTO # FROM (
    SELECT ID,question,choiceA FROM clozetest UNION ALL
    SELECT ID,question,choiceB FROM clozetest UNION ALL
    SELECT ID,question,choiceC FROM clozetest UNION ALL
    SELECT ID,question,choiceD FROM clozetest
    ) A 
    ORDER BY ID,NEWID()SELECT *,SEQ=IDENTITY(INT,1,1) INTO #T  FROM #TRUNCATE TABLE TC
    INSERT TC(question,choiceA,choiceB,choiceC,choiceD,answer)
    SELECT TC.question,choiceA,choiceB,choiceC,choiceD,
               CASE WHEN choiceA=choice THEN 'A' WHEN choiceB=choice THEN 'B' WHEN choiceC=choice THEN 'C' WHEN choiceD=choice THEN 'D'  END AS answer
    FROM (SELECT ID,question,
        MAX(CASE WHEN SEQ=1 THEN choiceA END) AS choiceA,
        MAX(CASE WHEN SEQ=2 THEN choiceA END) AS choiceB,
        MAX(CASE WHEN SEQ=3 THEN choiceA END) AS choiceC,
        MAX(CASE WHEN SEQ=4 THEN choiceA END) AS choiceD
    FROM (SELECT ID,question,choiceA,SEQ-(SELECT COUNT(*) FROM #T WHERE ID<A.ID) AS SEQ FROM #T  AS A) T
    GROUP BY ID,question) AS TC 
    JOIN
    (SELECT ID,CASE ANSWER WHEN 'A' THEN choiceA WHEN 'B' THEN choiceB WHEN 'C' THEN choiceC WHEN 'D' THEN choiceD END AS choice
     FROM clozetest) AS clozetest
    ON TC.ID=clozetest.ID
    ORDER BY NEWID()SELECT * FROM TC
    select * from tc where question='如果暂时不想看到Flash中的某个图层,可以将其(  )'
    select * from tc where isnull(choiceA,'11')='11'
    --DROP TABLE TB
    DROP TABLE TC
    DROP TABLE #
    DROP TABLE #TEND
      

  7.   

    是不是该考虑一下null的来源?我想一定是来自于聚合函数?是不是条件不严钻进了null?
      

  8.   

    CREATE TABLE TB(id INT,  question NVARCHAR(100), choiceA NVARCHAR(100), choiceB NVARCHAR(100), choiceC  NVARCHAR(100), choiceD NVARCHAR(100), answer NVARCHAR(1))
    CREATE TABLE TC(ID INT IDENTITY(1,1),question NVARCHAR(100), choiceA NVARCHAR(100), choiceB NVARCHAR(100), choiceC  NVARCHAR(100), choiceD NVARCHAR(100), answer NVARCHAR(1))
    INSERT TB
    SELECT 7, N'在虚拟世界中参与者可以穿梭在大街小巷、飞越摩天大楼;或拿着手术刀给“病人”作外科手术……,这主要体现了虚拟现实的(  )', N'沉浸感', N'构想性', N'交互性', N'实时性', N'A' UNION ALL
    SELECT 8, N'以下关于CD格式的声音文件叙述错误的是(    )', N'标准CD格式的采样频率是44.1kHz,速率为88KB/s,量化位数16位',N'可以直接把CD音频文件复制到硬盘上播放',N'CD是当今世界上音质最好的音频格式',N'CD光盘可以在CD唱机中播放,也能装在CD-ROM里用计算机里的各种播放软件来播放。', N'B' UNION ALL
    SELECT 9, N'多媒体作品界面的设计要遵循一定的原则和方法,它们是(  ) ①注意突出主题信息 ②界面布局要简明清晰 ③界面布局应该有整体上的一致性 ④注意文字显示的结果',  N'②③④', N'①②④', N'①②③④', N'①②③', N'C' UNION ALL
    SELECT 10, N'下列文件格式中,不是声音格式文件的是(    )', N'WAV格式', N'MID格式', N'JPG格式', N'MP3格式', N'C' UNION ALL
    SELECT 11, N'在Authorware中,用来控制作品流程的()',N'声音图标', N'显示图标', N'导向图标', N'数字电影图标', N'C'SELECT * INTO # FROM (
    SELECT ID,question,choiceA FROM TB UNION ALL
    SELECT ID,question,choiceB FROM TB UNION ALL
    SELECT ID,question,choiceC FROM TB UNION ALL
    SELECT ID,question,choiceD FROM TB
    ) A 
    ORDER BY ID,NEWID()SELECT *,SEQ=IDENTITY(INT,1,1) INTO #T  FROM #TRUNCATE TABLE TC
    INSERT TC(question,choiceA,choiceB,choiceC,choiceD,answer)
    SELECT TC.question,choiceA,choiceB,choiceC,choiceD,
               CASE WHEN choiceA=choice THEN 'A' WHEN choiceB=choice THEN 'B' WHEN choiceC=choice THEN 'C' WHEN choiceD=choice THEN 'D'  END AS answer
    FROM (SELECT ID,question,
        MAX(CASE WHEN SEQ=1 THEN choiceA END) AS choiceA,
        MAX(CASE WHEN SEQ=2 THEN choiceA END) AS choiceB,
        MAX(CASE WHEN SEQ=3 THEN choiceA END) AS choiceC,
        MAX(CASE WHEN SEQ=4 THEN choiceA END) AS choiceD
    FROM (SELECT ID,question,choiceA,SEQ-(SELECT COUNT(*) FROM #T WHERE ID<A.ID) AS SEQ FROM #T  AS A) T
    GROUP BY ID,question) AS TC 
    JOIN
    (SELECT ID,CASE ANSWER WHEN 'A' THEN choiceA WHEN 'B' THEN choiceB WHEN 'C' THEN choiceC WHEN 'D' THEN choiceD END AS choice
     FROM TB) AS TB
    ON TC.ID=TB.ID
    ORDER BY NEWID()SELECT * FROM TCDROP TABLE TB
    DROP TABLE TC
    DROP TABLE #
    DROP TABLE #T
    /*
    ID          question                                                                                             choiceA                                                                                              choiceB                                                                                              choiceC                                                                                              choiceD                                                                                              answer 
    ----------- ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------- ------ 
    1           在虚拟世界中参与者可以穿梭在大街小巷、飞越摩天大楼;或拿着手术刀给“病人”作外科手术……,这主要体现了虚拟现实的(  )                                         交互性                                                                                                  实时性                                                                                                  沉浸感                                                                                                  构想性                                                                                                  C
    2           多媒体作品界面的设计要遵循一定的原则和方法,它们是(  ) ①注意突出主题信息 ②界面布局要简明清晰 ③界面布局应该有整体上的一致性 ④注意文字显示的结果                        ①②③                                                                                                  ②③④                                                                                                  ①②④                                                                                                  ①②③④                                                                                                 D
    3           以下关于CD格式的声音文件叙述错误的是(    )                                                                            CD光盘可以在CD唱机中播放,也能装在CD-ROM里用计算机里的各种播放软件来播放。                                                           标准CD格式的采样频率是44.1kHz,速率为88KB/s,量化位数16位                                                                CD是当今世界上音质最好的音频格式                                                                                    可以直接把CD音频文件复制到硬盘上播放                                                                                  D
    4           在Authorware中,用来控制作品流程的()                                                                             数字电影图标                                                                                               显示图标                                                                                                 导向图标                                                                                                 声音图标                                                                                                 C
    5           下列文件格式中,不是声音格式文件的是(    )                                                                             JPG格式                                                                                                MID格式                                                                                                MP3格式                                                                                                WAV格式                                                                                                A
    */