最近写个SpringBoot时常用到以下SQL语句:
--------------------------------------------表之间的左右连接------------------------------------------------------
SELECT * from kb_dim_val kdv
left join kb_dim_val_tag kdvt on kdv.id = kdvt.dim_value_id
left join pub_kb_dim_tag pkdt on pkdt.id=kdvt.dim_tag_id
left join pub_kb_dim pkd on pkd.id=pkdt.dim_id
kv.VALUE_ID kdi,kdv.VALUE_ID kdvi
-------------------------------------------------------------------------------------------新建数据表-------------------
CREATE TABLE questions_new_QA(
VALUE_ID VARCHAR2 (32) NOT NULL primary key
, QUESTION VARCHAR2 (600) DEFAULT NULL
, FAQ_COUNT NUMBER (22) DEFAULT 0 NOT NULL
, V NUMBER (22) DEFAULT 0 NOT NULL
, EDITOR VARCHAR2 (50) DEFAULT NULL
, CREATE_TIME TIMESTAMP DEFAULT NULL
, EDIT_TIME TIMESTAMP DEFAULT NULL
, STATE INTEGER DEFAULT 0 NOT NULL
)
----------------------------------------------------------------------------------------新增加列--------------------------
alter table questions_new_QA add SAVE_TOES varchar(22)
alter table questions_new_QA add ARTICLE_ID varchar(22)
alter table questions_new_QA add group_id varchar(22)
-------------------------------------------------------------------------------将一个表的某些列插到另一个表-----------------------------------------
INSERT INTO questions_new_QA SELECT VALUE_ID,QUESTION,FAQ_COUNT,V,EDITOR,CREATE_TIME,EDIT_TIME, STATE FROM xi_xiaoi.kb_val
INSERT INTO answers_new_QA SELECT ID,VALUE,VALUE_ID,DIM_COUNT,APPCALL,DIM_SELECTION,DIM_DISABLED FROM xi_xiaoi.kb_dim_val
----------------------------------------------------------------------------------修改一个表的列属性-----------------------------------------------------------------------
alter table answers_new_QA alter column dim_count VARCHAR2(22)
alter table questions_new_QA modify search_counts NUMBER (22)
alter table answers_new_QA alter column DIM_COUNT VARCHAR2 (32);
ALTER TABLE answers_new_QA RENAME COLUMN value TO answer
----------------------------------------------------------------------限制一个表展示数据的列数-------------------------------------------------------------
SELECT kv.value_id as value_id,
kv.question as question,
kdv.value as answer,
kv.CREATE_TIME as CREATE_TIME,
kv.search_counts as search_counts,
kdv.id as answerId
FROM questions_new_QA kv
inner JOIN answers_new_QA kdv ON kv.VALUE_ID=kdv.VALUE_ID
WHERE ROWNUM <= 15
--------------------------------------------------------------------------给表增加主键约束---------------------------------------------
一个表的主键是唯一的,但是可作为主键的列不是唯一的,这种叫联合主键。
SYS_C0017131614(表示旧的主键名)
alter TABLE questions_new_QA drop constraint SYS_C0017131614
alter table questions_new_QA add CONSTRAINT SYS_C0017131614 primary key(question,value_id)