Questions tagged «sql»

结构化查询语言(SQL)是用于查询数据库的语言。问题应包括代码示例,表结构,示例数据以及正在使用的DBMS实现的标签(例如MySQL,PostgreSQL,Oracle,MS SQL Server,IBM DB2等)。如果您的问题仅涉及特定的DBMS(使用特定的扩展名/功能),请改用该DBMS的标签。使用SQL标记的问题的答案应使用ISO / IEC标准SQL。


5
SQL NVARCHAR和VARCHAR限制
所有,我都有一个大型(不可避免的)动态SQL查询。由于选择标准中字段的数量,包含动态SQL的字符串的长度超过4000个字符。现在,我知道为设置了最大4000 NVARCHAR(MAX),但是在Server Profiler中查看了已执行的SQL语句 DELARE @SQL NVARCHAR(MAX); SET @SQL = 'SomeMassiveString > 4000 chars...'; EXEC(@SQL); GO 似乎可以工作(!?),对于另一个也很大的查询,它抛出与此4000极限(!?)相关的错误,基本上在4000极限之后修剪所有SQL,并给我留下语法错误。尽管这样的探查,它表示在这个动态的SQL查询全(!?)。 这里到底发生了什么,我应该将这个@SQL变量转换为VARCHAR并继续进行下去吗? 谢谢你的时间。 附言 能够打印出超过4000个字符以查看这些大查询也将是一件很不错的事情。以下仅限于4000 SELECT CONVERT(XML, @SQL); PRINT(@SQL); 还有其他很酷的方法吗?



7
对所有基于文本的字段使用通用varchar(255)是否有缺点?
我有一个contacts包含字段,如表postcode,first name,last name,town,country,phone number等等,所有这些都被定义为VARCHAR(255)即使没有这些领域都不会接近有255个字符。(如果您想知道,是因为Ruby on Rails迁移VARCHAR(255)默认将String字段映射到String字段,而我从不费心去重写它)。 由于VARCHAR将仅存储字段的实际字符数(以及字段长度),因此,使用VARCHAR(16)over 相比有什么明显的优势(性能还是其他方面)VARCHAR(255)? 此外,这些字段中的大多数都有索引。字段上较大的VARCHAR大小是否会完全影响索引的大小或性能? 仅供参考,我正在使用MySQL 5。
100 mysql  sql 

5
Django在/不在查询中
我试图弄清楚如何在Django中编写“不在”风格的查询。例如,我正在考虑的查询结构将如下所示。 select table1.* from table1 where table1.id not in ( select table2.key_to_table1 from table2 where table2.id = some_parm ) 假设模型名为table1和table2,django语法会是什么样?
100 sql  django 

7
使用MySQL检查空字段
我写了一个查询来检查是否符合某些条件的用户,其中一个是他们有电子邮件地址。 我们的网站将允许用户拥有或没有电子邮件地址。 $aUsers=$this->readToArray(' SELECT `userID` FROM `users` WHERE `userID` IN(SELECT `userID` FROM `users_indvSettings` WHERE `indvSettingID`=5 AND `optionID`='.$time.') AND `email`!="" '); 这是检查SQL中的空字段的最佳方法吗?我刚刚尝试过“ IS NOT NULL”,但仍然返回用户记录,而他们没有电子邮件地址。 上面的查询有效,但出于好奇,我想知道自己是否以正确的方式进行操作。
100 php  sql  mysql  null 

19
从两个日期之间的日期范围中选择数据
我有一个名为的表Product_Sales,它包含这样的数据 Product_ID | Sold_by | Qty | From_date | To_date -----------+---------+-----+------------+----------- 3 | 12 | 7 | 2013-01-05 | 2013-01-07 6 | 22 | 14 | 2013-01-06 | 2013-01-10 8 | 11 | 9 | 2013-02-05 | 2013-02-11 现在,如果我要从日期范围中选择两个日期之间的销售数据,该怎么办? 例如,我想从选择的销售数据2013-01-03来2013-01-09。
100 sql  date  range 

6
在单个语句中用Java执行多个查询
嗨,我想知道是否可以使用JDBC执行类似的操作,因为即使在MySQL查询浏览器中,它当前也提供了异常。 "SELECT FROM * TABLE;INSERT INTO TABLE;" 虽然我确实意识到可以拆分SQL查询字符串并执行两次语句,但是我想知道是否存在一次性方法。 String url = "jdbc:mysql://localhost:3306/"; String dbName = "databaseinjection"; String driver = "com.mysql.jdbc.Driver"; String sqlUsername = "root"; String sqlPassword = "abc"; Class.forName(driver).newInstance(); connection = DriverManager.getConnection(url+dbName, sqlUsername, sqlPassword);
100 java  mysql  sql  jdbc 

3
SQLite-如何连接来自不同数据库的表?
我有一个使用SQLite数据库的应用程序,并且一切正常运行。我现在正在添加需要第二个SQLite数据库的新功能,但是我很难确定如何从不同的数据库联接表。 如果有人可以帮助我解决这个问题,我将不胜感激! 编辑:请参见此问题的示例案例,当您按照已接受的答案所述连接数据库时,可以适应您的语言。
100 sql  database  sqlite  join 

5
进行递归自联接的最简单方法?
在SQL Server中进行递归自联接的最简单方法是什么?我有一张这样的桌子: PersonID | Initials | ParentID 1 CJ NULL 2 EB 1 3 MB 1 4 SW 2 5 YT NULL 6 IS 5 而且我希望能够只获取与特定人员开始的层次结构相关的记录。因此,如果我通过PersonID = 1请求CJ的层次结构,则会得到: PersonID | Initials | ParentID 1 CJ NULL 2 EB 1 3 MB 1 4 SW 2 对于EB,我会得到: PersonID | Initials | …

16
行尾的'^ M'字符
当我在Unix环境中运行特定的SQL脚本时,我在该SQL脚本的每一行的末尾看到一个'^ M'字符,因为它回显了命令行。我不知道最初在哪个OS上创建SQL脚本。 是什么原因引起的,该如何解决?

5
MIN / MAX与ORDER BY和LIMIT
在以下查询中,您认为哪种方法更好?您的原因是什么(代码效率,更好的可维护性,更少的WTFery)... SELECT MIN(`field`) FROM `tbl`; SELECT `field` FROM `tbl` ORDER BY `field` LIMIT 1;
99 sql  mysql 

1
在PostgreSQL中打印变量的值
我有一个PostgreSQL函数 CREATE OR REPLACE FUNCTION fixMissingFiles() RETURNS VOID AS $$ DECLARE deletedContactId integer; BEGIN SELECT INTO deletedContactId contact_id FROM myContacts WHERE id=206351; -- print the value of deletedContactId variable to the console END; $$ LANGUAGE plpgsql; 如何将DeletedContactId的值打印到控制台?
99 sql  postgresql 

3
如果返回的值为null,则PostgreSQL返回0
我有一个查询返回avg(price) select avg(price) from( select *, cume_dist() OVER (ORDER BY price desc) from web_price_scan where listing_Type='AARM' and u_kbalikepartnumbers_id = 1000307 and (EXTRACT(Day FROM (Now()-dateEnded)))*24 < 48 and price>( select avg(price)* 0.50 from(select *, cume_dist() OVER (ORDER BY price desc) from web_price_scan where listing_Type='AARM' and u_kbalikepartnumbers_id = 1000307 and (EXTRACT(Day FROM …
99 sql  postgresql 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.