我编写了一个简单的Django应用程序,它显示了表中的值.该表非常简单,与其他表没有关系,所有值都是整数:
patientID region1 region2 regionN region200000
patient1 30 23 9 14
patient2 1 12 9 22
patientN 23 21 12 8
Run Code Online (Sandbox Code Playgroud)
唯一的问题是我有~200 000个基因组区域 - 这是固定数字(只有患者数量在增加).
这样的桌子最好的数据库系统是什么?这些数据是超级结构化的,简单而同质的 - 非常适合SQL,但建议它应该是noSQL?
最好有一个表有200000列,然后有N个表(N个患者)有200000行.
我创建了以下类型:
CREATE TYPE dbo.expressions
AS TABLE
(
expression varchar(255)
);
GO
Run Code Online (Sandbox Code Playgroud)
在存储过程中,我如何使用我收到的n个类型,并且每个类型都使用带有like子句的select?
在"编程"(和伪代码)方面,将是这样的:
for each expression in expressions
rows+=select * from table where table.field LIKE '%' + expression[i] + '%'
Run Code Online (Sandbox Code Playgroud)
我总是可以从我的API多次调用SP,但我想知道这是否可行,甚至更快,在SQL方面做.
SELECT emp_id INTO high_payed_emp_id
FROM (SELECT emp_id from cursor_table ORDER BY emp_salary DESC)
WHERE rownum = 1;
Run Code Online (Sandbox Code Playgroud)
我想获得最大的emp_id.付费员工 错误消息:ORA-00905:缺少关键字
我在下面遇到过一个问题
SELECT ColumnName1,*
FROM TableName
WHERE ColumnName = 'XXXXXX'
ORDER BY ColumnName1
Run Code Online (Sandbox Code Playgroud)
从上面的查询中,它会将错误抛出为不明确的列名列Column1.
即使我没有使用数字表,它也会抛出这样的错误.任何人都能说出这背后的原因.
我是 SQL 新手,我不明白这种语言是如何工作的,我有一个代码:
if (select Zarobki from PRACOWNICY) < 3000
update PRACOWNICY set Zarobki = Zarobki * 2
else
update PRACOWNICY set Zarobki = Zarobki / 2
Run Code Online (Sandbox Code Playgroud)
如何比较表格中的多个值?我认为 select 像循环语句一样工作
我有这种情况,我不能在sql中使用@标志.但是我想声明变量.有没有人知道是否有任何其他方式来声明它们而不使用@符号?
我正在尝试在我的 ubuntu 18.04 上的 pgAdmin 中创建本地服务器,但出现此错误。
这是错误
这是我的设置

我正在尝试在postgresql LIKE中使用下划线执行对特定数据模式的搜索,但它似乎不起作用。
客户端的版本为9.2.21,服务器的版本为9.4.12。
例如,
select *
from table1
where f1 like '___'
Run Code Online (Sandbox Code Playgroud)
即使表中明显存在匹配项,也不会返回任何内容(即,存在具有匹配值的数据),例如f1 = '123'。
我想知道是否有系统配置/参数会影响此行为?
还是可以用其他方式解释一下?
我正在具有多个架构(用户)的数据库中工作-在SQL DEVELOPER(ORACLE)中
我想最初为查询设置一个架构,这样就无需在写入查询的每个表之前都包括架构名称。
寻找:
USE SCHEMA_NAME;
SELECT * FROM TABLE;
Run Code Online (Sandbox Code Playgroud)
代替:
SELECT * FROM SCHEMA_NAME.TABLE;
Run Code Online (Sandbox Code Playgroud) 我们有一个新的软件包,该软件包使该公司可以编写SQL代码放在Query门户上。我们有一些报告希望将前一天作为选择之一进行编码。如果报表是在星期一运行的,我们要自动选择上一个星期五作为选择日期,我们有ORACLE SQL DEVELOPER 4.1。我们尝试使用的代码如下:
SELECT ALERT_CD,ALERT_KEY,CHG_DTM,
CASE
WHEN TO_CHAR(SYSDATE,'fmday')='sunday'
THEN SYSDATE-2
WHEN TO_CHAR(SYSDATE,'fmday')='monday'
THEN SYSDATE-3
ELSE SYSDATE-1
END "change"
FROM SG00400T
WHERE ALERT_CD='AUTO'
and CHG_DTM >= to_date('SYSDATE', 'mm/dd/yyyy')
Run Code Online (Sandbox Code Playgroud)
我们收到的错误:
SELECT ALERT_CD,ALERT_KEY,CHG_DTM,
CASE
WHEN TO_CHAR(SYSDATE,'fmday')='sunday'
THEN SYSDATE-2
WHEN TO_CHAR(SYSDATE,'fmday')='monday'
THEN SYSDATE-3
ELSE SYSDATE-1
END "change"
FROM SG00400T
WHERE ALERT_CD='AUTO'
and CHG_DTM >= to_date('SYSDATE', 'mm/dd/yyyy')
Run Code Online (Sandbox Code Playgroud)
CHG_DTM是日期/时间字段,可能是我们目前尚不完全了解的问题的一部分。任何帮助将不胜感激。
sql ×6
sql-server ×4
t-sql ×4
oracle ×3
postgresql ×2
if-statement ×1
padding ×1
pgadmin-4 ×1
plsql ×1
sql-like ×1
sqldatatypes ×1
variables ×1