我在数据库中对表进行了规范化并对其进行了非规范化,我从两个表中创建了一个视图.当我尝试在视图上创建聚簇索引时,它不会让我,因为视图是使用左外连接创建的.我使用了左连接,因为我希望在结果视图中显示空值,就像在之前的帖子中建议的那样.
表结构和关系与上面链接中描述的非常相似.
我似乎在这里撞墙,因为我无法将我的左连接转换为内连接,因为这将排除任何连接列上具有空值的所有记录.我的问题是:
我昨天刚刚完成了一个SQL Server课程,所以不知道如何继续.非常感谢任何评论.干杯.
我正在使用MS SQL Server Express 2012.
我在网格结果中删除unicode字符U + 02CC(十进制:716)时遇到问题.原文是'λeˌβár'.
我试过这样,它不起作用:
SELECT ColumnTextWithUnicode, REPLACE(ColumnTextWithUnicode , '?','')
FROM TableName
Run Code Online (Sandbox Code Playgroud)
该列具有Latin1_General_CI_AS排序规则,数据类型为nvarchar.我尝试将排序规则更改为二进制文件,但也没有成功:
SELECT ColumnTextWithUnicode, REPLACE(ColumnTextWithUnicode collate Latin1_General_BIN, '?' collate Latin1_General_BIN,'')
FROM TableName
Run Code Online (Sandbox Code Playgroud)
甚至使用NChar()函数,如:
SELECT ColumnTextWithUnicode, REPLACE(ColumnTextWithUnicode , NCHAR(716),'')
FROM TableName
Run Code Online (Sandbox Code Playgroud)
所有三个结果都是'λeˌβár'.
但是,如果我将列转换为varchar,如:
SELECT ColumnTextWithUnicode, REPLACE(CAST(ColumnTextWithUnicode as varchar(100)), '?','')
FROM TableName
Run Code Online (Sandbox Code Playgroud)
结果变为'eßár',删除第一个字符和'ˌ'.
任何想法只删除'ˌ'?