标签: select-query

如何从SQL Server中的值列表中进行选择

我有一个非常简单的问题,我无法解决.我需要做这样的事情:

select distinct * from (1, 1, 1, 2, 5, 1, 6).
Run Code Online (Sandbox Code Playgroud)

有谁可以帮忙?

编辑

数据来自我们的一个客户的文本文件.它完全没有格式化(它是一个单一的,很长的文本行),但它可能在Excel中这样做.但这对我来说不实用,因为我需要在我的sql查询中使用这些值.每次我需要运行查询时这样做都不方便.

sql-server select-query

194
推荐指数
9
解决办法
33万
查看次数

SELECT*FROM tablename WHERE 1

我很好奇.这些相应查询之间有什么区别:

  1. SELECT * FROM `tablename`

  2. SELECT * FROM `tablename` WHERE 1

  3. SELECT * FROM `tablename` WHERE 1=1

sql select-query

127
推荐指数
6
解决办法
1万
查看次数

SQL Server PRINT SELECT(打印选择查询结果)?

我正在尝试打印选定的值,这可能吗?

例:

PRINT 
    SELECT SUM(Amount) FROM Expense
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server select-query

56
推荐指数
5
解决办法
22万
查看次数

在MySQL SELECT查询中使用IF语句

我试图IF在MySQL选择查询中使用一个语句.

我在第一个AND语句之后收到错误IF.

SELECT J.JOB_ID,E.COMPANY_NAME,J.JOB_DESC,JT.JOBTYPE_NAME,J.COMPENSATION,ST.STATE_NAME,MC.METRO_CITY_NAME,I.INDUSTRY_NAME,
 J.JOB_CONTACT_PERSON,J.DT_INSRT,J.JOB_TITLE,J.JOB_EXP_DATE,J.SKILLS
 FROM JOBS J 
 JOIN EMPLOYER E ON J.COMPANY_ID=E.COMPANY_ID 
 JOIN LOOKUP_JOBTYPE JT ON J.JOB_TYPE=JT.JOBTYPE_ID
 JOIN LOOKUP_STATE ST ON J.STATE_ID=ST.STATE_ID
 JOIN JOBS_LOCATION JL ON J.JOB_ID=JL.JOB_ID
 JOIN LOOKUP_METRO_CITY MC ON JL.METRO_CITY_ID=MC.METRO_CITY_ID
 JOIN LOOKUP_INDUSTRY I ON J.INDUSTRY_ID=I.INDUSTRY_ID 
 JOIN JOBS_QUALIFICATION JQ ON J.JOB_ID=JQ.JOB_ID 
 JOIN LOOKUP_DEGREE_QUALIFICATION LDQ ON LDQ.QUALIFICATION_ID = JQ.QUALIFICATION_ID
 WHERE  J.ACTIVE='Y' AND J.DT_INSRT > COALESCE(pEmailSntDt,DATE_SUB(SYSDATE(),INTERVAL 4 DAY))  
AND
IF(JQ.COURSE_ID=0) 
THEN
IF(JQ.DEGREE_ID=0)
THEN J.SKILLS LIKE CONCAT('%', pSkills,'%')
ELSE
JQ.DEGREE_ID=pDegreeId OR J.SKILLS LIKE CONCAT('%', pSkills,'%') …
Run Code Online (Sandbox Code Playgroud)

mysql if-statement select-query

25
推荐指数
3
解决办法
20万
查看次数

MySQL浮点比较问题

我通过在MySQL数据库模式中引入浮点列遇到了一个问题,即浮点值的比较并不总是返回正确的结果.

1 - 50.12
2 - 34.57
3 - 12.75
4 - ......(休息时间均小于12.00)

SELECT COUNT(*) FROM `users` WHERE `points` > "12.75"
Run Code Online (Sandbox Code Playgroud)

这让我回归"3".

我已经读过MySQL中浮点值的比较是一个坏主意,十进制类型是更好的选择.

我是否有希望继续使用float类型并使比较正常工作?

mysql floating-point comparison select-query

20
推荐指数
2
解决办法
3万
查看次数

在sqlite android中搜索波斯语/阿拉伯语会给出错误的结果

我有一个sqlite数据库的问题.它似乎不支持完整的波斯语/阿拉伯语字符.当我基于波斯字符搜索某些字段时,大多数时候Sqlite无法识别那些字符.

我通过从HTML文件中复制数据将数据插入数据库.所以当我输入字符串和搜索时,没有结果显示.但如果我复制字符串和搜索,它的工作原理.

HTML文件中的字符串是:

"احكامخمس"

键入的字符串是:

"احکامخمس"

sqlite android arabic persian select-query

14
推荐指数
2
解决办法
1967
查看次数

对于startdate和enddate的SQL查询混淆

我有一个像这样的表(例如tableA):

| Name  | Startdate  |  Enddate   |
|---------------------------------|
|  a    | 2012-07-01 | 2013-06-30 |
|  b    | 2011-05-01 | 2012-04-30 |
|  c    | 2010-01-01 | 2013-12-31 |
|  d    | 2013-01-01 | 2014-12-31 |
|  e    | 2011-07-01 | 2012-06-30 |

我想从桌子上得到一个活跃于和之间的名字.从上表中,结果应该是a,c和e.2012-05-012012-10-31

我所做的如下:

SELECT Name FROM tableA WHERE startdate<='2012-05-01' AND enddate>='2012-10-31'
Run Code Online (Sandbox Code Playgroud)

但我得不到正确的结果.

sql sql-server select select-query

4
推荐指数
1
解决办法
1万
查看次数

我需要在大表上加速特定的mysql查询

嗨,我知道有很多主题专门讨论查询优化策略,但是这个主题太具体了,我无法在Internet上的任何地方找到答案。

我在eshop中有一个大表的产品(约18万行),该表有65列。是的,我知道很多,但是我在那里存储有关书籍,DVD,蓝光和游戏的信息。

仍然我没有考虑查询很多列,但是选择仍然很棘手。有许多条件需要考虑和比较。查询以下

SELECT *
FROM products
WHERE production = 1 
AND publish_on < '2012-10-23 11:10:06' 
AND publish_off > '2012-10-23 11:10:06' 
AND price_vat > '0.5' 
AND ean <> ''
AND publisher LIKE '%Johnny Cash%'
ORDER BY bought DESC, datec DESC, quantity_storage1 DESC, quantity_storege2 DESC, quantity_storage3 DESC
LIMIT 0, 20
Run Code Online (Sandbox Code Playgroud)

我已经尝试在where子句中甚至逐个order子句中在cols上逐一放置索引,然后我尝试在on上创建复合索引(生产,publish_on,publish_off,price_vat,ean)。

查询仍然很慢(几秒钟),并且需要快速,因为它的eshop解决方案和人们因无法快速获得结果而离开。而且,我仍然没有计算搜索所有找到的行所需的时间,以便可以进行分页。

我的意思是,使其快速完成的最佳方法是简化查询,但是在这种情况下,必须满足所有条件和排序。

任何人都可以帮助解决此类问题吗?甚至有可能加快这种查询的速度,还是有其他方法可以简化查询,而将其余的留在php引擎上以对结果进行排序。

哦,我真的对此一无所知。请分享您的智慧

提前谢谢了

mysql performance select-query

3
推荐指数
1
解决办法
1万
查看次数

通配符作为存储过程的参数

假设,我有一个存储过程,它接受一个参数 - id,并返回一些与此 id 相对应的数据。如果我想检索所有这些数据,比如在 SELECT 查询中使用通配符怎么办?这该怎么做?

sql interbase stored-procedures select-query

3
推荐指数
1
解决办法
9404
查看次数

滥用聚合函数MAX()

我想在Alert表中列的最新非空ignition_status.

我的列unix_time是Unix时间戳中的时间,因此最大unix_time列值,最新是条目.

以下是我的代码

cursor = dbUtilsObj.query(Alert.TABLE_NAME, new String[] { alertType_COLUMN }, " MAX(" + Alert.Columns.KEY_ALERT_UNIX_TIME
                + ")" + AND + Alert.Columns.KEY_MACHINE_TELE_DEVICE_NO + EQUALS + AND + alertType_COLUMN + IS_NOT_NULL,
                new String[] { String.valueOf(teleDevieNo) }, null, null, Alert.Columns.KEY_ALERT_UNIX_TIME);
Run Code Online (Sandbox Code Playgroud)

得到错误

(1) misuse of aggregate function MAX()
: android.database.sqlite.SQLiteException: misuse of aggregate function MAX() (code 1): , while compiling: SELECT ignition_status FROM alert WHERE  MAX(unix_time) and tele_device_no = ?  and ignition_status IS NOT NULL  ORDER …
Run Code Online (Sandbox Code Playgroud)

sqlite android max aggregate-functions select-query

3
推荐指数
1
解决办法
3479
查看次数