【发布时间】:2021-02-14 05:17:43
【问题描述】:
我有一个作业问题,说明如下:
用数据填充表格,确保至少有 5 个人、至少 8 个帖子和至少 4 个赞。确保使用序列来生成主键值。大多数字段都是不言自明的。至于 Post 中的“内容”字段,随意设置,例如“看看这些新照片”或“刚到巴哈马”,并将摘要设置为内容的前 12 个字符,后跟“……”。
对于这个问题,我有一张表叫 Post:
CREATE TABLE Post
(
post_id decimal(12) NOT NULL PRIMARY KEY
, person_id decimal(12) NOT NULL FOREIGN KEY REFERENCES Person(person_id)
, content varchar(255) NOT NULL
, created_on date NOT NULL
, summary varchar(15) NOT NULL
)
对于这个作业问题,我正在尝试找出如何解决一个问题:“将摘要设置为内容的前 12 个字符,后跟“...”。”。基本上,我试图通过取前 12 个字符在摘要字段上写入内容
我有这个插入语句:
INSERT INTO Post (post_id, person_id, content, created_on, summary)
VALUES
(NEXT VALUE FOR Post_seq, 1, 'Take a look at these new pics', GETDATE(), SUBSTRING('Take a look at these new pics', 1, 12) + '...')
我尝试这样做是为了避免重复
INSERT INTO Post (post_id, person_id, content, created_on, summary)
VALUES
(NEXT VALUE FOR Post_seq, 1, 'Take a look at these new pics', GETDATE(), SUBSTRING(content, 1, 12) + '...')
但是这个插入语句不起作用,因为它不知道内容是什么。在我插入的相同值上应用格式的最佳方法是什么,而不必在同一个插入语句中再次编写它?任何帮助将不胜感激。
提前致谢
【问题讨论】:
标签: sql sql-server tsql